阿豪的CSD呢 2023-06-11 01:11 采纳率: 0%
浏览 5

py爬虫下截图片链接保存到本地的时候报403

爬虫爬图片 403,header 头要传哪些参数,怎么绕防盗,今天试了好久,没有试出来

  • 写回答

1条回答 默认 最新

  • CSDN-Ada助手 CSDN-AI 官方账号 2023-06-11 06:07
    关注
    • 这有个类似的问题, 你可以参考下: https://ask.csdn.net/questions/7677409
    • 你也可以参考下这篇文章:【python】自动生成一定数量的随机请求头header,对爬虫进行伪装
    • 除此之外, 这篇博客: 【Python爬虫】 爬取商品图片并下载中的 2. 请求数据(headers 的作用是将请求伪装成浏览器的请求,可以跳过简单的爬虫拦截) 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
    • # 更换一个可以下载图片的网址
      url = "https://search.jd.com/Search?keyword=笔记本电脑&wq=笔记本电脑&page=%d&s=%d&click=0"%(page,size)
      headers = {"user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.90 Safari/537.36"}
      
      resp = requests.get(url=url,headers=headers)
      content = etree.HTML(resp.text)
    • 您还可以看一下 阿尔法老师的Python爬虫开发入门课程中的 第五讲:发送带headers的请求小节, 巩固相关知识点
    • 以下回答由chatgpt基于相关博客总结生成:

      针对问题:如何在使用Python爬虫下载图片时避免403错误?

      如果在使用Python爬虫下载图片时遇到了403错误,可以考虑向请求头部添加用户代理信息和Referer信息来规避这个问题。

      其中,用户代理是指发送请求的客户端的应用程序类型、操作系统、软件开发商等,而Referer则是指请求来源,表明用户是从哪个URL链接过来的。

      具体来说,可以向请求头中添加如下信息:

      headers = {
          'User-Agent':'Mozilla/5.0 (Windows NT 10.0;Win64,x64) AppleWebKit/537.36(KHTML,like Gecko) Chrome/58.0.3029.110 Safari/537.36 Edge/16.16299', 
          'Referer':'https://www.example.com/'
      }
      

      其中,User-Agent可以是任意一个主流浏览器的字符串,具体可以通过浏览器的开发者工具获取;而Referer则应该设置成目标网站的URL。

      这样设置请求头后,再发起图片下载请求,应该就能够避免403错误了。

      另外,还有一些反爬虫机制可能会检测请求头中的其他信息,比如Cookie、Accept等,需要具体问题具体分析,如果存在这类情况需要做相应的设置来规避反爬虫机制。

      参考资料:

      1. Python3网络爬虫:设置Headers避免403错误和IP封锁问题

      2. python 爬虫遇到403怎么办?

      3. Python爬取网页403错误解决方法

    评论

报告相同问题?

问题事件

  • 创建了问题 6月11日

悬赏问题

  • ¥15 求一个C# sm4 加密解密的代码
  • ¥15 想做个网络加速器,怎么实现
  • ¥20 centos7下载mysql提示DNS解析异常
  • ¥20 vx转账功能对方不能领取
  • ¥15 vue2+codemirror 运行后页面光标太大了
  • ¥15 pdfjs库如何在前端实现打印、旋转等功能
  • ¥15 combobox数据绑定问题
  • ¥15 maven打包时,为什么有的依赖打不进去包
  • ¥15 求复现机器学习文章一篇
  • ¥15 爬虫抓取数据|解析视频文本内容(相关搜索:自动化)