@mffff4

Python: Как спарсить ссылку, которая находится в стиле?

Здравствуйте. Появилась необходимость в там деле:
Имеется страница сайта, на котором находятся ссылки на изображения, но они находятся в тэге style.
Предоставляю пример:

<div class="UIMagicalImage_image RestaurantPageMenuItem_pictureImage" role="img" aria-label="Пример" style="background-image: url(&quot;https://primer.ru/test.jpeg&quot;);"></div>


Ответ, который хотелось бы получить:
https://primer.ru/test.jpeg

Как такое можно реализовать. Много разных подобных обсуждений прочитал, но ответа не нашёл.
  • Вопрос задан
  • 453 просмотра
Пригласить эксперта
Ответы на вопрос 1
SoreMix
@SoreMix Куратор тега Python
yellow
Много разных подобных обсуждений прочитал, но ответа не нашёл

Аттрибуты всех тегов можно получить просто по ключу как со словарем.

from bs4 import BeautifulSoup

html = '''<html lang="en">
<body>
    <div class="UIMagicalImage_image RestaurantPageMenuItem_pictureImage" role="img" aria-label="Пример" style="background-image: url(&quot;https://primer.ru/test.jpeg&quot;);"></div>
</body>
</html>
'''

soup = BeautifulSoup(html, 'html.parser')
div = soup.find('div')
print(div['style'])


Дальше уже как душе угодно, хоть через find, хоть через regex.

import re
url = re.search(r'(https?://.+?)"', div['style']).group(1)
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы