您的位置:首页 > 新闻资讯 >文章内容
python爬虫遇到301、302状态码怎么回事?
来源:互联网 作者:admin 时间:2019-04-01 16:57:48

  每个网站的反爬虫机制不一样,而且网站也是有变化的,因此爬虫在爬取的过程中是经常会遇到问题的,今天讲下关于爬虫遇到的301、302的问题。


  这些状态码出现时,很大程度的影响到我们的爬虫速度和信息的准确性,那么如何去处理呢?


python爬虫遇到301、302状态码怎么回事?


  这些状态码的意思以及应对方法:


  302:请求到的资源在一个不同的URL处临时保存。


  处理方式:重定向到临时的URL。


  301:请求到的资源都会分配一个永久的URL,这样就可以在将来通过该URL来访问此资源。


  处理方式:重定向到分配的URL。


  300:该状态码不被HTTP/1.0的应用程序直接使用,只是作为3XX类型回应的默认解释。存在多个可用的被请求资源。


  处理方式:若程序中能够处理,则进行进一步处理,如果程序中不能处理,则丢弃。


  针对不同的模块给出不同的解决方案:


  在使用python爬虫的过程中难免会遇到很多301,302的问题。


  使用requests模块爬虫


  使用requests模块遇到301和302问题时,


  如果是用requests,那就在参数里面关闭重定向。


  >>> r = requests.get('http://github.com', allow_redirects=False)


  allow_redirects=False#设置这个属性为False则是不允许重定向,反之可以重定向


  如果使用的scrapy,那就在在设置里添加禁止重定向。


  REDIRECT_ENABLED


  REDIRECT_MAX_TIMES


  使用scrapy模块进行爬虫的时候遇到301很302问题。


python爬虫遇到301、302状态码怎么回事?


  这是在yield里面加上dont_filter=True,解决了这个问题,dont_filter的意思是,如果已经爬取过得url,也就是没有出现问题的url,自然而然出现问题的url将会再次被传递,这样也就解决了重定向问题。


  只要找到问题,便能对症下药,不然也是干着急,也解决不了。网站的反爬虫比较多,不仅是遇到这些问题,还有学会处理IP限制,验证码问题,动态加载等等。


相关文章内容简介
推荐阅读
  • 12 2019-09
    用代理IP爬虫前 你必须懂的33个知识点(三)

    爬虫为什么要用代理IP?又是什么让爬虫变得常态化?如果你也在思考这些问题,那么机灵代理搜集了33个相关知识点就非常适合你了,如果你想要了解爬虫以及大数据的相关知识,用代理IP开展爬

  • 07 2019-10
    开源代理服务器介绍:Privoxy篇

    5大开源web代理服务器的第二篇文章,机灵代理给大家介绍Privoxy这个软件。它具有哪些特性功能,是我们平时在使用的时候忽略掉的呢?下面一起来看看吧。

  • 04 2019-09
    Python爬虫怎么减少被封?

    网站反爬虫机制让不少爬虫工作者非常头痛,总是爬虫爬到一半就被封掉,手中能用的IP越来越少,不过这个问题一般用代理IP就能解决。想要爬虫的时候减少被发现的概率,那么你需要做到以

  • 26 2019-11
    对比代理IP的独享与共享

    不了解代理IP不知道,没想到这个换IP神器,居然能够有这么多不同的分类。实在是让不太认识代理服务的人一脸蒙圈了,今天机灵代理先给大家介绍独享IP与共享IP

  • 07 2019-07
    网络爬虫使用http代理的作用

    网络爬虫使用http代理的作用,刚刚接触数据采集,可能大家不清楚为何网络爬虫要使用http代理?

  • 25 2019-09
    python使用代理IP发送数据

    人人网当时可是非常火的社交平台,可惜后续发展不给力,跟不上时代的脚步,被新型社交平台给抢走了流量。但是我们做爬虫练习、学习Python的时候,还是可以利用这个网站来进行学习。下面

在线咨询
大客户经理
大客户经理
1829380381
13316264505

大客户经理微信

微信公众号

微信公众号

回到顶部