Парсинг тэга img BeautifulSoup

392 просмотра
0
0 Комментариев

Есть такой html код https://pastebin.com/wvuRtqzi

Хочу из тэга img вытащить первый small, но мои попытки терпят неудачи

Для начала я попробовал получить сам тэг img. У меня это получилос

find("img")

Потом начал в тэге img искать small

find("img").find("small")

Но тут начали выскакивать ошибки на подобии этой (ошибки потому что я пробовал другие методы типа [‘small’] или обрезку [:1]

AttributeError: 'NoneType' object has no attribute 'find'


Добавить комментарий

2 Answers

Python Опубликовано 14.12.2018
0

Во-первых, внутри тега img других тегов быть не может. Во-вторых, чтобы не было ошибок, надо почитать документацию и понять, что же возвращает метод find. В-третьих, по моему личному мнению, BeautifulSoup — пустая трата времени, так как порой генерит такой код, который потом само распарсить не может.

Добавить комментарий
0

находится у вас внутри content атрибута в элементе в отдельном HTML документе:

soup = bs4.BeautifulSoup(HTML)
img = soup.find('img', content=True)
assert img is not None
content_soup = bs4.BeautifulSoup(img['content'])
 
print(content_soup.small.get_text())

Добавить комментарий
Напишите свой ответ на данный вопрос.
Scroll Up