Розширений пошук
Деякі HTML-теги вимагають обов'язкових атрибутів, наприклад, тег посилання потребує атрибут href, а тег <img> — атрибут src. Для доступу до конкретного атрибута використовуйте метод .get() після .attrs. Наприклад, отримайте всі атрибути src з усіх елементів <img>.
12345678910111213# Importing libraries from bs4 import BeautifulSoup from urllib.request import urlopen # Reading web page url = "https://codefinity-content-media.s3.eu-west-1.amazonaws.com/18a4e428-1a0f-44c2-a8ad-244cd9c7985e/page.html" page = urlopen(url) html = page.read().decode("utf-8") # Reading HTML with BeautifulSoup soup = BeautifulSoup(html, "html.parser") for img in soup.find_all("img"): print(img.attrs.get("src"))
Ви також можете зустріти атрибут id, який часто використовується для розрізнення елементів з однаковим тегом. Щоб шукати елементи з певними значеннями атрибутів, передайте їх у вигляді словника у форматі attr_name: attr_value до методу .find_all() одразу після вказання тегу. Наприклад, знайдіть усі елементи <div> з атрибутом class, що дорівнює "box", або елемент <p> з атрибутом "id" зі значенням "id2".
12345678910111213141516# Importing libraries from bs4 import BeautifulSoup from urllib.request import urlopen # Reading web page url = "https://codefinity-content-media.s3.eu-west-1.amazonaws.com/18a4e428-1a0f-44c2-a8ad-244cd9c7985e/page.html" page = urlopen(url) html = page.read().decode("utf-8") # Reading HTML with BeautifulSoup soup = BeautifulSoup(html, "html.parser") for div in soup.find_all("div", {"class": "box"}): print(div) # Filtering by id attribute value print(soup.find("p", {"id": "id2"}))
Метод .find() використовується замість .find_all() для отримання елемента за його id, оскільки id є унікальним ідентифікатором і не може повторюватися. Щоб переконатися, що були отримані лише певні елементи <div>, перевірте класи, призначені цим елементам <div>.
12345678910111213# Importing libraries from bs4 import BeautifulSoup from urllib.request import urlopen # Reading web page url = "https://codefinity-content-media.s3.eu-west-1.amazonaws.com/18a4e428-1a0f-44c2-a8ad-244cd9c7985e/page.html" page = urlopen(url) html = page.read().decode("utf-8") # Reading HTML with BeautifulSoup soup = BeautifulSoup(html, "html.parser") for div in soup.find_all("div"): print(div.attrs.get("class"))
Дякуємо за ваш відгук!
Запитати АІ
Запитати АІ
Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат
Can you explain how the `.get()` method works with attributes in BeautifulSoup?
What other attributes can I filter by using `.find_all()`?
How do I handle elements that don't have the attribute I'm searching for?
Чудово!
Completion показник покращився до 4.35
Розширений пошук
Свайпніть щоб показати меню
Деякі HTML-теги вимагають обов'язкових атрибутів, наприклад, тег посилання потребує атрибут href, а тег <img> — атрибут src. Для доступу до конкретного атрибута використовуйте метод .get() після .attrs. Наприклад, отримайте всі атрибути src з усіх елементів <img>.
12345678910111213# Importing libraries from bs4 import BeautifulSoup from urllib.request import urlopen # Reading web page url = "https://codefinity-content-media.s3.eu-west-1.amazonaws.com/18a4e428-1a0f-44c2-a8ad-244cd9c7985e/page.html" page = urlopen(url) html = page.read().decode("utf-8") # Reading HTML with BeautifulSoup soup = BeautifulSoup(html, "html.parser") for img in soup.find_all("img"): print(img.attrs.get("src"))
Ви також можете зустріти атрибут id, який часто використовується для розрізнення елементів з однаковим тегом. Щоб шукати елементи з певними значеннями атрибутів, передайте їх у вигляді словника у форматі attr_name: attr_value до методу .find_all() одразу після вказання тегу. Наприклад, знайдіть усі елементи <div> з атрибутом class, що дорівнює "box", або елемент <p> з атрибутом "id" зі значенням "id2".
12345678910111213141516# Importing libraries from bs4 import BeautifulSoup from urllib.request import urlopen # Reading web page url = "https://codefinity-content-media.s3.eu-west-1.amazonaws.com/18a4e428-1a0f-44c2-a8ad-244cd9c7985e/page.html" page = urlopen(url) html = page.read().decode("utf-8") # Reading HTML with BeautifulSoup soup = BeautifulSoup(html, "html.parser") for div in soup.find_all("div", {"class": "box"}): print(div) # Filtering by id attribute value print(soup.find("p", {"id": "id2"}))
Метод .find() використовується замість .find_all() для отримання елемента за його id, оскільки id є унікальним ідентифікатором і не може повторюватися. Щоб переконатися, що були отримані лише певні елементи <div>, перевірте класи, призначені цим елементам <div>.
12345678910111213# Importing libraries from bs4 import BeautifulSoup from urllib.request import urlopen # Reading web page url = "https://codefinity-content-media.s3.eu-west-1.amazonaws.com/18a4e428-1a0f-44c2-a8ad-244cd9c7985e/page.html" page = urlopen(url) html = page.read().decode("utf-8") # Reading HTML with BeautifulSoup soup = BeautifulSoup(html, "html.parser") for div in soup.find_all("div"): print(div.attrs.get("class"))
Дякуємо за ваш відгук!