Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Вивчайте Атрибути та вміст елемента | Робота з Атрибутами Елементів у Beautiful Soup
Web Scraping з Python

bookАтрибути та вміст елемента

Методи, розглянуті в попередніх розділах, повертають певні частини HTML-коду. BeautifulSoup дозволяє отримувати атрибути та вміст окремих елементів. Для доступу до атрибутів об'єкта використовуйте атрибут .attrs. Наприклад, можна отримати атрибути першого елемента <div>.

123456789101112
# 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/jesus.html" page = urlopen(url) html = page.read().decode("utf-8") # Reading HTML with BeautifulSoup soup = BeautifulSoup(html, "html.parser") print(soup.find("div").attrs)
copy

Варто зазначити, що результат використання атрибута .attrs — це словник, у якому ключами є назви атрибутів, а значеннями — їх відповідні значення. Якщо потрібно отримати вміст, що зберігається всередині тегу, використовуйте атрибут .contents. Наприклад, розглянемо вміст першого елемента <div>.

123456789101112
# 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/jesus.html" page = urlopen(url) html = page.read().decode("utf-8") # Reading HTML with BeautifulSoup soup = BeautifulSoup(html, "html.parser") print(soup.find("div").contents)
copy

Як видно вище, усі символи нового рядка були включені до списку елементів, що може бути не найкращим способом представлення вмісту. Якщо потрібно отримати лише текст всередині певного елемента, використовуйте метод .get_text(). Порівняйте результати з наведеного нижче прикладу з отриманими раніше.

123456789101112
# 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/jesus.html" page = urlopen(url) html = page.read().decode("utf-8") # Reading HTML with BeautifulSoup soup = BeautifulSoup(html, "html.parser") print(soup.find("div").get_text())
copy
Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 3. Розділ 1

Запитати АІ

expand

Запитати АІ

ChatGPT

Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат

Suggested prompts:

What is the difference between .attrs, .contents, and .get_text() in BeautifulSoup?

Can you explain how to use .attrs to get specific attribute values?

How can I extract text from other HTML elements using BeautifulSoup?

Awesome!

Completion rate improved to 4.35

bookАтрибути та вміст елемента

Свайпніть щоб показати меню

Методи, розглянуті в попередніх розділах, повертають певні частини HTML-коду. BeautifulSoup дозволяє отримувати атрибути та вміст окремих елементів. Для доступу до атрибутів об'єкта використовуйте атрибут .attrs. Наприклад, можна отримати атрибути першого елемента <div>.

123456789101112
# 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/jesus.html" page = urlopen(url) html = page.read().decode("utf-8") # Reading HTML with BeautifulSoup soup = BeautifulSoup(html, "html.parser") print(soup.find("div").attrs)
copy

Варто зазначити, що результат використання атрибута .attrs — це словник, у якому ключами є назви атрибутів, а значеннями — їх відповідні значення. Якщо потрібно отримати вміст, що зберігається всередині тегу, використовуйте атрибут .contents. Наприклад, розглянемо вміст першого елемента <div>.

123456789101112
# 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/jesus.html" page = urlopen(url) html = page.read().decode("utf-8") # Reading HTML with BeautifulSoup soup = BeautifulSoup(html, "html.parser") print(soup.find("div").contents)
copy

Як видно вище, усі символи нового рядка були включені до списку елементів, що може бути не найкращим способом представлення вмісту. Якщо потрібно отримати лише текст всередині певного елемента, використовуйте метод .get_text(). Порівняйте результати з наведеного нижче прикладу з отриманими раніше.

123456789101112
# 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/jesus.html" page = urlopen(url) html = page.read().decode("utf-8") # Reading HTML with BeautifulSoup soup = BeautifulSoup(html, "html.parser") print(soup.find("div").get_text())
copy
Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 3. Розділ 1
some-alt