pandas.read_html 报错FileNotFoundError、OSError Traceback (most recent call last)

一、最终方案

适配 Pandas 2.x / 3.x 所有版本,彻底解决跨设备报错

核心逻辑:将 HTML 字符串包装为 内存文件流,强制让 pandas 识别为文本而非文件路径,规避新版版本路径判定BUG

Plain 复制代码
import io
import pandas as pd

# self_table 为 HTML 表格字符串(str)
df = pd.read_html(io.StringIO(self_table))[0]

二、问题现象

  • 本机环境:代码正常运行,无报错,可正常解析网页表格

  • 另一台设备环境 :相同代码直接抛出 FileNotFoundError / OSError

  • 报错核心特征 :pandas 将 HTML 标签字符串识别为本地文件路径,提示 No such file or directory: <html>...</html>

三、环境差异(根本诱因)

环境 Pandas版本 Lxml版本 兼容行为
本机(正常) 2.0.3(旧版) 4.9.3 宽松识别:带<标签的字符串 → 判定为HTML文本
其他设备(报错) 3.0.3(新版) 6.1.1 严格识别:普通字符串优先判定为本地文件路径

报错截图

四、踩坑全过程复盘

  • 增加str包裹self_table,仍然报错
  • 增加str、且手动包裹完整 <html><body> 外壳,依旧报错
相关推荐
benchmark_cc2 天前
前复权数据每天可能变化,历史数据库应该覆盖还是保留原始价格?
大数据·python·pandas·量化交易·股票数据·quantdash
Patrick在香港2 天前
pandas 读 CSV 不报错 ≠ 读对了:四个默认参数翻车实测
pandas·数据清洗·数据类型·实测·read_csv
MoRanzhi12032 天前
第 3 篇 · 数据清洗与特征工程:从问题判定到特征构建
python·pandas·数据清洗·特征工程·缺失值处理·异常值检测·特征编码
53488736abcdefg3 天前
Pandas核心:Series与DataFrame
pandas
毕业设计7033 天前
(免费领源码)django空气净化器销售系统09218- java、PHP、python、C#、小程序、大数据、单片机、网络工程等)
python·scrapy·mysql·pycharm·django·flask·pandas
benchmark_cc3 天前
A股、港股、美股日K如何拼接?处理不同交易日造成的时间轴错位
大数据·python·pandas·量化交易·股票数据·quantdash
2601_966949654 天前
多市场量化策略的数据接口应该如何设计:从数据层架构到策略接入
开发语言·python·数据分析·pandas·量化交易·股票数据·quantdash
benchmark_cc5 天前
本地已有一年历史 K 线,第二天更新别只拉“昨天一天”
python·数据分析·pandas·量化交易·股票数据·quantdash
正在走向自律7 天前
AI数据分析与可视化:从基础到应用实践
服务器·人工智能·python·机器学习·数据分析·pandas
ctlover7 天前
Pandas进阶
人工智能·机器学习·pandas