python-3.x - 获取div内的所有span
问题描述
我正在访问https://footystats.org/页面,因为我需要从中获取一些信息。HTML 代码类似如下
<span class="timezone-convert-match-regular">07:00pm</span>
<span class="timezone-convert-match-regular">08:00pm</span>
</div>
<div class="league-data"> Nigeria A
<span class="timezone-convert-match-regular">07:15pm</span>
<span class="timezone-convert-match-regular">08:30pm</span>
</div>
我需要显示如下
Internacional Friendless 07:00pm
Internacional Friendless 08:00pm
Nigeria A 07:15pm
Nigeria A 08:30pm
我的代码python
html = driver.page_source
soup = BeautifulSoup(html, "lxml")
for liga, hour in zip( soup.select('div.league-data'), soup.find_all('span', attrs={'class': 'timezone-convert-match-regular'}) ):
print(liga.text.strip(),hour.text.strip())```
解决方案
您可以使用以下代码:
from bs4 import BeautifulSoup
data = '''
<div class="league-data"> Internacional Friendless
<span class="timezone-convert-match-regular">07:00pm</span>
<span class="timezone-convert-match-regular">08:00pm</span>
</div>
<div class="league-data"> Nigeria A
<span class="timezone-convert-match-regular">07:15pm</span>
<span class="timezone-convert-match-regular">08:30pm</span>
</div>'''
soup = BeautifulSoup(data, 'lxml')
l = [(div.contents[0].strip(), span.text.strip())
for div in soup.select('div.league-data')
for span in div.select('span')]
for match, hour in l:
print(match, hour)
印刷:
Internacional Friendless 07:00pm
Internacional Friendless 08:00pm
Nigeria A 07:15pm
Nigeria A 08:30pm
推荐阅读
- android - 如何从firestore中的数组数据字段中获取数据?
- php - php替换字符串中的id元素内容
- apache-kafka - 在 Kafka 流连接中,第二个加入字段会进入队列等待第一个字段加入窗口吗?
- kubernetes - Kubernetes 上的 JupyterHub:创建错误:禁止使用 pod“hub-b564f4485-”:无法针对任何 pod 安全策略进行验证:[]
- jsf - 阿拉伯语显示为 ???? ???在控制台和 MySQL 中
- laravel - 外键约束的格式不正确。如何正确修复?
- flutter - 再次调用时颤振弹出屏幕保留值
- flutter - 如何在颤动中添加标签顶部和底部
- javascript - 过滤具有相同ID的对象数组并对序列进行排序并在Javascript中取最高的一个
- angular - Angular 使用功能路由动态加载功能模块