我需要了解复杂HTML字符串中的所有标记(aria-label)的内容:
<a href="https://www.wtp.waw.pl/rozklady-jazdy/?wtp_dt=2021-12-25&wtp_md=3&wtp_ln=23" class="timetable-button timetable-button-tile " aria-label="Tramwaj - Linia: 23 , Utrudnienia w ruchu"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36" aria-hidden="true">
<path class="i-fg" fill="#FFF"SVG CODE"></path>
</svg><span aria-hidden="true">23</span></a>据我所知,我创建了一个python脚本,但它什么也不做(也不会抛出任何错误)。我错过了一些看起来没那么大的东西.请帮帮忙。
import requests
from bs4 import BeautifulSoup
url ='https://www.wtp.waw.pl/rozklady-jazdy/?fbclid=IwAR3oq9mYmn_LKFljiyP2_MkG1r3FHRgZLQdNvis_48nPccaJ6EO3MXb3QLY'
response = requests.get(url)
soup = BeautifulSoup(response.content, 'html.parser')
data = soup.find_all('a', {'aria-label'})
for i in data:
print(i["aria-label"])打印用作示例的HTML字符串的内容:
"Tramwaj - Linia: 23 , Utrudnienia w ruchu"发布于 2021-12-25 04:31:13
最初的问题是bs4加载和存储数据的方式。我能够用以下代码再现预期的输出:
import requests
from bs4 import BeautifulSoup
url ='https://www.wtp.waw.pl/rozklady-jazdy/?fbclid=IwAR3oq9mYmn_LKFljiyP2_MkG1r3FHRgZLQdNvis_48nPccaJ6EO3MXb3QLY'
response = requests.get(url)
soup = BeautifulSoup(response.text, 'html.parser')
data = soup.find_all('a')
for i in data:
if "aria-label=" in str(i):
print(i["aria-label"])在希望进一步缩小结果的情况下,在for循环中添加额外的逻辑以检查标准!
https://stackoverflow.com/questions/70476319
复制相似问题