#python #beautifulsoup #screen-scraping
#python #прекрасный суп #соскабливание сита
Вопрос:
Я хотел бы получить значение data-slug из содержимого страницы, например, как показано ниже:
...
<div class="my_class" data-slug="I_want_to_scrap_it" data-title="Title">
<br> Some text </div>
...
Я нашел его с помощью метода find_all(class_=»my_class»), но я не знаю, как извлечь из него «I_want_to_scrap_it». Конечно, я могу преобразовать его в строку и получить подстроку, но, возможно, для этого есть довольно простой метод Beautifulsoup.
Спасибо и хорошего дня!
Комментарии:
1.Это очистка , а не утилизация…
2. Хорошо, спасибо. Теперь это очистка.
3. @MartinDomino не помешало бы показать нам ваш код. Помогло бы нам получить представление.
Ответ №1:
Вот один из примеров:
html = '''<div class="my_class" data-slug="I_want_to_scrap_it" data-title="Title">
<br> Some text </div>
'''
# solution using BeautifulSoup
from bs4 import BeautifulSoup
soup = BeautifulSoup(html, 'html5lib')
div = soup.select('div.my_class')[0]
data_slug = div.get('data-slug')
print(data_slug)
data-slug
является атрибутом и может быть извлечен с помощью функции get()
.
Комментарии:
1. Спасибо вам, Александра!