Описание работы модуля BeautifulSoup для парсинга в python. На текущий момент версия Beautiful Soup 4.
Статья будет пополняться…
Установка и интеграция
Установка:
pip install beautifulsoup4
Импорт
from bs4 import BeautifulSoup
Пример работы:
soup = BeautifulSoup(content, 'html.parser')
Или через библиотеку lxml:
soup = BeautifulSoup(content, 'lxml')
Здесь потребуется установить дополнительно:
pip install lxml
Найти ссылку
Найти ссылку с текстом внутри неё:
text = soup.find('a', text='Какой-то текст внутри ссылки')
Найти одну ссылку с классом main:
link = soup.find('a', {'class': 'main'})
Найти все ссылки с классом main:
links = soup.findAll('a', {'class': 'main'})
Найти текст ссылки с классом main:
link = soup.find('a', {'class': 'main'}).text
Найти тег
Найти тег h1 с классом title, затем найти первый внутренний элемент и забрать у него текст:
title = soup.find('h1', {'class': 'title'}).findChildren()[0].text
Найти внутри тега div с текстом «Страна» все ссылки:
text = soup.find('div', text='Страна').parent.findAll('a')
Найти изображение
Найти содержимое srcset изображения с классом poster:
string = soup.find('img', {'class': 'poster'})['srcset']