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

Python爬虫问题:提取表格第二列并去除空白行

解决比特币区块链表格第二列提取时的空白行问题

嘿,作为Python爬虫新手遇到这种小问题很正常,我来帮你搞定!

问题原因分析

你遇到的空白行问题,本质是表格里部分行的第二列单元格本身是空的,或者包含换行、空格这类空白字符——当你直接打印cell.text时,这些空白内容就会被输出成空行。而第一列每个单元格都有实际内容,所以改索引到第一列时就没这个问题。

解决方案:过滤空白内容

我们只需要对提取到的单元格文本做两步处理:

  1. 用strip()去掉文本前后的空白字符(包括换行、空格、制表符等)
  2. 只输出非空的处理后文本

修改后的完整代码

import requests
from bs4 import BeautifulSoup

url = "https://blockchain.info/block-height/521578"
response = requests.get(url)
soup = BeautifulSoup(response.content, "html.parser")

# 定位目标表格
stat_table = soup.find_all('table', class_='table table-striped')[0]

for row in stat_table.find_all("tr"):
    # 获取第二列单元格(索引1,因为列表从0开始)
    cells = row.find_all("td")
    if len(cells) >= 2:  # 确保该行有至少两列,避免索引越界
        cell_text = cells[1].text.strip()
        if cell_text:  # 只输出非空内容
            print(cell_text)

代码改动说明

  • 增加了len(cells) >= 2的判断:防止某些行只有1列(加了这步代码会更健壮)
  • 用strip()清理文本:去掉多余的空白字符,避免无效换行
  • 增加if cell_text:判断:只有当清理后的文本不为空时才打印,彻底消除空白行

这样处理后,输出就没有空白行,直接就能保存成CSV文件啦!

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.27 06:56:34