Страницы

Поиск по вопросам

воскресенье, 16 февраля 2020 г.

Парсинг библиотека BeautifulSoup: как получить элементы <a> с заданным атрибутом

#python #beautiful_soup


Есть ссылки вида:

1
2
3

1
2


Как можно получить href'ы только ссылок с атрибутом "chapter"?
    


Ответы

Ответ 1



from bs4 import BeautifulSoup r = ''' 1 2 3 1 2''' soup = BeautifulSoup(r, 'html.parser') for a in soup.find_all('a', chapter=True): print(a)

Ответ 2



Альтернативный и немного более лаконичный способ - использовать CSS селекторы - на данный момент BeautifulSoup поддерживает ограниченный набор селекторов - но для большинства повседневных задач хватает: for a in soup.select('a[chapter]'): print(a) # или print(a.get_text()) чтобы распечатать тексты ссылок

Комментариев нет:

Отправить комментарий