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

使用Python爬取维基百科演员图片遭403禁止,User Agent合规仍无效

解决维基百科图片爬取403 Forbidden错误

核心问题

你遇到的403错误是因为请求图片资源时未遵循维基媒体的User-Agent规范,且你提供的代码仅处理了维基百科页面请求,未覆盖图片资源的请求逻辑。

修复步骤

  • 按要求设置合规的User-Agent:格式必须包含项目名称/版本+联系邮箱或网站,示例:
    headers = {
        'User-Agent': 'MyActorImageCrawler/1.0 (your-email@example.com)'
    }
    
    禁止使用随便复制的通用浏览器UA,这类模糊请求会被维基服务器拦截。
  • 确保所有请求(包括图片资源)都携带该headers:错误提示中的请求目标是upload.wikimedia.org下的图片,因此爬取图片时必须传入合规headers,而非仅在维基百科页面请求时使用。
  • 图片请求修正示例:
    import requests
    
    # 合规UA配置
    headers = {'User-Agent': 'MyActorImageCrawler/1.0 (your-email@example.com)'}
    # 目标图片URL
    img_url = 'https://upload.wikimedia.org/wikipedia/commons/0/0a/Christian_Bale-7837.jpg'
    # 携带headers请求图片
    response = requests.get(img_url, headers=headers)
    # 保存图片
    if response.status_code == 200:
        with open('christian_bale.jpg', 'wb') as f:
            f.write(response.content)
    

额外注意事项

  • 控制请求速率,建议每秒不超过1次,避免触发反爬机制
  • 爬取内容需遵守维基百科版权协议,禁止商业滥用

内容的提问来源于stack exchange,提问作者Nico O.

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.15 10:05:24