首页 > 解决方案 > 如何在 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

标签: pythonhtmlweb-scrapinghtml-tablebeautifulsoup

解决方案


我相信这会给你你正在寻找的东西。

for result in results:
    if 'align="center"' in str(result.contents[0]):
        #append to some list

推荐阅读