使用pandas读取Google Drive的CSV文件为DataFrame时报错如何解决?
你当前传入pd.read_csv()的是Google Drive的文件预览页面链接,不是CSV文件的直接下载地址,pandas会尝试解析HTML页面内容而非CSV数据,因此触发解析报错。
解决方法
- 先确认你的Google Drive文件权限已设置为「任何拥有链接的用户可查看」,无公开权限的文件无法通过直链直接读取。
- 将原预览链接转换为CSV直链,转换规则为:将原链接
https://drive.google.com/file/d/[文件ID]/view替换为https://drive.google.com/uc?id=[文件ID]
修正后可运行代码
import pandas as pd filepath = "https://drive.google.com/uc?id=1bUTjF-iM4WW7g_Iii62Zx56XNTkF2-I1" df = pd.read_csv(filepath) df.head(5)
大体积文件兼容方案
如果文件体积超过Google Drive的免验证下载阈值,会触发安全扫描拦截,可通过gdown库先下载到本地再读取:
- 先安装依赖:
pip install gdown - 运行如下代码:
import gdown import pandas as pd file_id = "1bUTjF-iM4WW7g_Iii62Zx56XNTkF2-I1" url = f"https://drive.google.com/uc?id={file_id}" local_file_path = "data.csv" gdown.download(url, local_file_path, quiet=False) df = pd.read_csv(local_file_path) df.head(5)
内容的提问来源于stack exchange,提问作者Nazar
相关产品推荐
相关产品推荐

