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

使用Pandas读取Goodreads导出CSV失败,返回HTML内容求助

Goodreads导出CSV链接返回HTML而非数据的原因及解决方式

问题原因

  • 你使用的Goodreads导出链接需要用户登录认证才能访问。未登录状态下请求该URL,服务器会自动重定向到登录/注册页面,因此Pandas读取到的是登录页面的HTML代码,而非预期的CSV数据。
  • pd.read_csv()直接请求该URL时,没有携带登录后的会话认证信息(如Cookie),Goodreads服务器无法验证你的身份,所以返回了HTML页面。

解决办法

1. 手动下载后读取(简单直接)

先登录你的Goodreads账号,访问导出链接下载CSV文件到本地,再用Pandas读取本地文件:

import pandas as pd
# 替换为你本地CSV文件的实际路径
df = pd.read_csv('./goodreads_export.csv', on_bad_lines='skip')
print(df)

2. 携带认证Cookie请求(自动化方案)

如果需要实现自动化读取,可通过以下步骤:

  • 登录Goodreads后,在浏览器开发者工具中获取登录会话的Cookie信息;
  • 用requests库携带Cookie请求该链接,再将响应内容传给Pandas读取:
import pandas as pd
import requests
from io import StringIO

# 替换为你自己的登录Cookie
cookies = {
    "session_key": "你的会话密钥",
    "session_id": "你的会话ID"
}

response = requests.get(
    'https://www.goodreads.com/review_porter/export/153331182/goodreads_export.csv',
    cookies=cookies
)

# 将响应文本转为可读取的文件流
df = pd.read_csv(StringIO(response.text), on_bad_lines='skip')
print(df)

注意:Cookie存在有效期,过期后需重新获取;切勿泄露Cookie信息,以免账号被盗。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.26 08:40:30