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

使用pandas下载CSV到本地时报UnicodeDecodeError错误的原因及解决方法

错误产生原因
  • 核心原因是目标CSV文件的编码格式与pandas默认使用的utf-8编码不匹配:你调用的美国人口普查局公开数据集使用latin-1(即iso-8859-1)编码存储,其中包含了西班牙语字符ñ(对应字节为0xf1)等utf-8无法直接解析的特殊字符,因此触发解码失败。
  • 你现有代码还存在一处语法错误:选取多列时需要用双层方括号包裹列名列表,当前的单层方括号写法会额外抛出KeyError。
最简有效解决办法

仅需给pd.read_csv方法新增encoding='latin-1'参数指定编码,同时修正多列选取的语法即可正常运行,修改后完整代码如下:

import pandas as pd

url = 'https://www2.census.gov/programs-surveys/popest/datasets/2010-2019/counties/totals/co-est2019-alldata.csv'

# 指定文件编码为latin-1解决解码错误
df = pd.read_csv(url, encoding='latin-1')
# 修正多列选取语法,使用双层方括号
df = df[['SUMLEV', 'REGION', 'DIVISION', 'STATE', 'COUNTY', 'STNAME', 'CTYNAME', 'POPESTIMATE2019']]
df.to_csv('C:\localpath.csv', index=False)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.09 17:57:01