You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用BeautifulSoup删除HTML表格内首个td内容非数字的tr行

实现代码

你可以直接使用以下代码完成需求:

from bs4 import BeautifulSoup

html1 = """
<table>
<tbody><tr>
<th>Id</th>
<th>Month</th>
</tr>
<tr><td>1</td><td>January</td></tr>
<tr><td>2</td><td>February</td></tr>
<tr><td>3</td></tr>
<tr><td>4</td></tr>
<tr><td>5</td><td>October</td></tr>
<tr><td>6</td><td>December</td></tr>
<tr><td>7</td></tr>
<tr><td>Correct</td></tr>
</tbody></table>
"""

# 解析HTML内容
soup = BeautifulSoup(html1, "html.parser")

# 遍历所有表格行
for tr in soup.find_all("tr"):
    first_td = tr.find("td")
    # 仅删除包含td、且首个td内容不是纯数字的行
    if first_td and not first_td.text.strip().isdigit():
        tr.decompose()

# 输出处理后的完整表格
print(soup)
逻辑说明
  • 解析时使用Python内置的html.parser即可,不需要额外安装其他解析器
  • 表头行全部由<th>标签组成,遍历判断时会自动跳过保留,不需要额外做过滤处理
  • 对首个<td>的内容做了首尾空白去除的兼容处理,避免内容前后有空格导致数字识别失败
  • 调用decompose()方法删除指定行后,原有表格的其他结构会完整保留

内容的提问来源于stack exchange,提问作者user7864386

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 00:45:05