Я хочу извлечь "климат 17.08.2009 14:00" из HTML-тега "a", показанного ниже. Я написал код, который, как мне показалось, извлечет весь текст из тега «а», а затем я извлеку нужную подстроку, используя строковые операции.
<div class="topic">
<a class="class_a" href="/href_1" data1="" data2="hello" data3="Hi" date="Monday, August 17" time="2:00 PM" topic="climate 8/17/2019 2:00 PM">
<span>2:00 PM</span>
<i class="Afternoon"></i>
</a>
</div>
Я запускаю приведенный ниже код и результатбыло:
2:00 PM
Я также изменил строки, как показано ниже, и это не помогло. bar = topics.find('a')
до bar = topics.find('a', {"class": "class_a"})
Я проверил тип переменной бара класса bs4.element.Tag
(не строка)
from urllib.request import urlopen
from bs4 import BeautifulSoup
html = urlopen('https://tbd.com')
bs = BeautifulSoup(html.read(), 'html.parser')
topics = bs.findAll("div", {"class": "topic"})
for topic in topics:
bar = topic.find('a')
print (bar.text)