Я хочу сканировать текст из подкласса в HTML-теге
с BeautifulSoup, но на выходе получается пустой массив.
Я уже пытался использовать только верхний класс (msg-content-cell) и только подкласс (f1vbk p-msg-head-body) без тега p в конце.
Это моя программа на Python:
class CrawledArticle():
def __init__(self, heading, message):
self.heading = heading
self.message = message
class ArticleFetcher():
def fetch(self):
url = "https://www.verkehrsinformation.de/?road=A8®ion=%25"
articles = []
time.sleep(1)
r = requests.get(url)
doc = BeautifulSoup(r.text, "html.parser")
for heading in doc.select(".td-msg-head-heading"):
heading = heading.select(".td-msg-head-heading")
for message in doc.select(".msg-content-cell"):
message = message.select(".msg-content-cell .f1vbk p-msg-head-body p")
crawled = CrawledArticle(heading, message)
articles.append(crawled)
return articles
Вот выдержка из исходного кода HTML, где я хочу сканировать текст "zwischen Beratzhausen (95) und Parsberg (94)"
</div>
<div id="a3itHKyCfOGlFAIL" class="table-row newmsg">
<div class="msg-content-cell">
<div class="row bg-white cursor-pointer" onclick="window.location.href='/staumeldung/?token=a3itHKyCfOGlFAIL&sp=ro:%|re:2|pg:1'">
<div class="td-msg-head-heading">
<p class="f1vbk p-msg-head-heading">
A3 Passau Richtung Nürnberg:
</p>
</div>
<div class="td-msg-head-info">
</div>
</div>
<div class="row bg-white cursor-pointer" onclick="window.location.href='/staumeldung/?token=a3itHKyCfOGlFAIL&sp=ro:%|re:2|pg:1'">
<p class="f1vbk p-msg-head-body">
zwischen Beratzhausen (95) und Parsberg (94) Wanderbaustelle.
<!--<a class="extendlink l1vbku">Mehr</a>...//-->
</p>
<p class="p-msg-head-body pull-right f1vbk">
<a class="extendlink l1vbku">Kartenansicht</a> |
<a class="extendlink l1vbku">Alle Details</a>
</p>
</div>
</div>
Я ожидаю сканировать текст из подкласса "f1vbk p-msg-head-body" внутри тега
HTML, но на выходе получается пустой массив.
Где разница по сравнению с классом "td-msg-head-heading" и как я могу получить простой текст?