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

如何在pandas中导入既非CSV也非Excel格式的URL数据

世界银行GDP指标页面数据读取解决方案

问题原因

你直接传入的URL是世界银行的HTML展示页面,并非结构化的CSV/Excel文件直链,pd.read_csv 和 pd.read_excel 只能识别对应格式的文件流,无法解析HTML内容,因此读取失败。

解决方案

方案1:使用官方CSV文件(最稳定)

  • 访问目标页面后点击右上角的CSV下载按钮,将数据文件保存到本地
  • 读取时跳过前4行元数据说明即可拿到结构化数据,代码示例:
import pandas as pd
# skiprows=4对应跳过世界银行CSV文件前4行的表头说明
df = pd.read_csv("本地CSV文件的存储路径.csv", skiprows=4)

方案2:直接读取页面内嵌表格(无需手动下载)

该方法依赖lxml解析库,执行代码前先运行pip install lxml完成安装。

  • 基础版代码:
import pandas as pd
# read_html会自动识别页面所有HTML表格,返回表格列表,目标数据一般在列表下标为1的位置,可根据实际返回结果调整下标
tables = pd.read_html("https://data.worldbank.org/indicator/NY.GDP.MKTP.CD")
df = tables[1]
  • 反爬兼容版:如果触发网站反爬限制,可以增加请求头伪装浏览器访问:
import pandas as pd
import requests

# 伪装浏览器请求头
headers = {
    "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36"
}
response = requests.get("https://data.worldbank.org/indicator/NY.GDP.MKTP.CD", headers=headers)
tables = pd.read_html(response.text)
df = tables[1]

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.26 22:45:05