python - 如何在 Beautiful Soup 中的标签上使用 if 语句?
问题描述
我是一个使用 Beautiful Soup 的初学者,我有一个关于“if”语句的问题。
我正在尝试从网页中的表格中删除数据,但也有处理表格和后期表格。
所有需要的表格都有表格的划分,而无用的表格有各种划分。
我想做的是使用 find_all 搜索所有表分区,然后循环遍历结果并将所有分区附加到列表中,其中 .contents 方法的第一项是具有属性 align = 'center' 的标签,但我不知道如何将标签作为 Beautiful Soup 对象进行操作,并且不知道如何使用它。
我在下面有我尝试过的代码,如果有人能给我一些提示,我将不胜感激。
import requests
from bs4 import BeautifulSoup
r = requests.get('https://afltables.com/afl/stats/2018.html')
soup = BeautifulSoup(r.text, 'html.parser')
results = soup.find_all('tr')
lists =[]
for result in results:
if result.contents[0] == 'align = centre':
#append to some list
解决方案
我相信这会给你你正在寻找的东西。
for result in results:
if 'align="center"' in str(result.contents[0]):
#append to some list
推荐阅读
- javacc - 用于单行注释的 JavaCC 正则表达式
- gitlab - 如果删除构建目录,Gitlab 作业将失败
- python - 从 C++ 嵌入式解释器捕获 python 窗口输出
- docker - 使用 Ubuntu 和 Mac 的 Docker Swarm 模式
- django - django 中的模板标签与自定义模板标签和过滤器
- python - Pandas,Numpy:如何使用内循环加速行迭代?
- c# - 在 xUnit 中为多个 ICollectionFixture 运行相同的测试
- ios - 如何在容器 UIViewController 中的子 UIViewController 之间创建自定义动画
- algorithm - C中的快速排序算法仅对两个数字进行排序
- c++ - 模板化函数或带有指向基类的指针的函数