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

使用PRAW调用Reddit API时出现请求头非法字符报错求助

问题分析与解决

错误原因

报错提示请求头值存在前导空格,这是因为Reddit API近期加强了请求头格式校验,不允许User-Agent字段包含前导空格、保留字符或换行符。你的情况是PRAW生成的User-Agent字符串开头多了一个空格,导致请求被拒绝。

解决方案

  • 检查并修正USER_AGENT变量:确保你的USER_AGENT值没有前导空格。比如如果之前是" MyApp/1.0",要改成"MyApp/1.0"。
  • 升级PRAW到最新版本:旧版本PRAW可能存在User-Agent拼接逻辑的bug,执行以下命令升级:
    pip install --upgrade praw
    
  • 显式指定完整合规的User-Agent:直接设置一个符合Reddit要求的User-Agent字符串,格式建议为"应用名称/版本 (by u/你的Reddit用户名)",示例:
    reddit = praw.Reddit(
        client_id=CLIENT_ID,
        client_secret=CLIENT_SECRET,
        user_agent="SerieAHotScraper/1.0 (by u/YourUsername)",
        username=USERNAME,
        password=PASSWORD
    )
    

验证

修改后重新运行代码,遍历hot_posts时应该能正常获取帖子内容,不再触发请求头格式错误。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.15 19:45:39