gpt4 book ai didi

python - 如何使用 BeautifulSoup 删除父标签

转载 作者:太空宇宙 更新时间:2023-11-03 17:41:33 27 4
gpt4 key购买 nike

我正在尝试使用 BeautifulSoup 从 html 表格中删除标题单元格。我有类似的东西;

<tr> <th> head1 </th> <th> head2 </th> </tr>

我使用以下代码删除所有标题单元格;

soup = BeautifulSoup(url)    
for headless in soup.find_all('th'):
headless.decompose()

这很有效,但我留下了一个空行,这会在以后把事情弄乱;

<tr> </tr>

我尝试了以下代码,但收到 AttributeError: 'NoneType' object has no attribute 'decompose'

for headless in soup.find_all('th'):
headless.parent.decompose()

如何删除包含标题单元格的行或稍后删除空白行?谢谢。

最佳答案

那是因为你删除了外部 <tr>在第一次迭代时(当 headless=<th>head2</th> 时),以便当迭代达到 <th>head2</th> 时它的父级是 None .

您可以改为迭代 <tr>有了 child <td>像这样:

for headless in (tr for tr in soup.find_all('tr') if tr.find('th')):
headless.decompose()

关于python - 如何使用 BeautifulSoup 删除父标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30472032/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com