在使用Scrapy框架中总是遇到这类问题,在此留下记录,方便查阅、

三种解决方式:

解决(一)

在Request中将scrapy的dont_filter=True,因为scrapy是默认过滤掉重复的请求URL,添加上参数之后即使被重定向了也能请求到正常的数据了

解决(二)

在scrapy框架中的 settings.py文件里添加

HTTPERROR_ALLOWED_CODES = [301]

解决(三)

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

url = 'https://www.baidu.com/'

html = requests.get(url, headers=headers, allow_redirects=False)

return html.headers['Location']

1

2

3

allow_redirects=False的意义为拒绝默认的301/302重定向从而可以通过html.headers[‘Location’]拿到重定向的URL。

解决(四)

查看链接是否更改为协议类型,如果之前是http类型的,改为https也会报301

python scrapy爬虫遇见301_python Scrapy框架 报301相关推荐

  1. Python 网络爬虫笔记9 -- Scrapy爬虫框架

    Python 网络爬虫笔记9 – Scrapy爬虫框架 Python 网络爬虫系列笔记是笔者在学习嵩天老师的<Python网络爬虫与信息提取>课程及笔者实践网络爬虫的笔记. 课程链接:Py ...

  2. Python 网络爬虫笔记10 -- Scrapy 使用入门

    Python 网络爬虫笔记10 – Scrapy 使用入门 Python 网络爬虫系列笔记是笔者在学习嵩天老师的<Python网络爬虫与信息提取>课程及笔者实践网络爬虫的笔记. 课程链接: ...

  3. 学习python-day02-24---转自Python分布式爬虫打造搜索引擎Scrapy精讲

    第三百六十八节,Python分布式爬虫打造搜索引擎Scrapy精讲-用Django实现搜索的自动补全功能 elasticsearch(搜索引擎)提供了自动补全接口 官方说明:https://www.e ...

  4. 第三百三十八节,Python分布式爬虫打造搜索引擎Scrapy精讲—深度优先与广度优先原理...

    第三百三十八节,Python分布式爬虫打造搜索引擎Scrapy精讲-深度优先与广度优先原理 网站树形结构 深度优先 是从左到右深度进行爬取的,以深度为准则从左到右的执行(递归方式实现)Scrapy默认 ...

  5. 第三百六十二节,Python分布式爬虫打造搜索引擎Scrapy精讲—elasticsearch(搜索引擎)基本的索引和文档CRUD操作、增、删、改、查...

    第三百六十二节,Python分布式爬虫打造搜索引擎Scrapy精讲-elasticsearch(搜索引擎)基本的索引和文档CRUD操作.增.删.改.查 elasticsearch(搜索引擎)基本的索引 ...

  6. Python 网络爬虫笔记11 -- Scrapy 实战

    Python 网络爬虫笔记11 – Scrapy 实战 Python 网络爬虫系列笔记是笔者在学习嵩天老师的<Python网络爬虫与信息提取>课程及笔者实践网络爬虫的笔记. 课程链接:Py ...

  7. 三十七 Python分布式爬虫打造搜索引擎Scrapy精讲—将bloomfilter(布隆过滤器)集成到scrapy-redis中...

    Python分布式爬虫打造搜索引擎Scrapy精讲-将bloomfilter(布隆过滤器)集成到scrapy-redis中,判断URL是否重复 布隆过滤器(Bloom Filter)详解 基本概念 如 ...

  8. 第三百六十节,Python分布式爬虫打造搜索引擎Scrapy精讲—elasticsearch(搜索引擎)的基本概念...

    第三百六十节,Python分布式爬虫打造搜索引擎Scrapy精讲-elasticsearch(搜索引擎)的基本概念 elasticsearch的基本概念 1.集群:一个或者多个节点组织在一起 2.节点 ...

  9. 第三百四十五节,Python分布式爬虫打造搜索引擎Scrapy精讲—爬虫和反爬的对抗过程以及策略—scrapy架构源码分析图...

    第三百四十五节,Python分布式爬虫打造搜索引擎Scrapy精讲-爬虫和反爬的对抗过程以及策略-scrapy架构源码分析图 1.基本概念 2.反爬虫的目的 3.爬虫和反爬的对抗过程以及策略 scra ...

最新文章

  1. linux怎么看系统盘,Linux系统怎么查看电脑的磁盘空间?
  2. 关于ST-Link下载STM32程序的使用
  3. WPF触发器(Trigger、DataTrigger、EventTrigger)
  4. 架构师原来是这样修炼出来的
  5. 分集增益的不同合并方式的性能分析
  6. Linux 入侵痕迹清理技巧
  7. 数据防泄密产品实测对比
  8. 详细分析关于Ip地址计算的题目。
  9. 读懂matlab代码,一个Matlab的寻峰程序没有看懂,不知大家能否帮助?
  10. Install SysBench support MySQL and PostgreSQL
  11. 学无止境,我爱python
  12. CF407B 「Long Path」
  13. [C语言]口令比较填空:阅读程序,按要求在空白处填写适当的表达式或语句,使程序完整并符合题目要求。 下面程序比较用户键盘输入的口令userInput与内设的口令password是否相同。若相同,
  14. wave.Error: unknown format: 3解决方法
  15. linux网口初始化_深入理解Linux网络技术内幕——网络设备初始化
  16. postgresql时间差计算
  17. Android 仿冰草约课 日历
  18. iphone编辑过的录音怎么还原_苹果手机录音怎么恢复
  19. 联想昭阳E43A笔记本电脑Centos6.2系统配置历程笔记 ——Centos6.2操作系统的安装...
  20. 父亲节棒球亲子活动·棒球1号位

热门文章

  1. 分页设计 与 高级查询 的 结合设计
  2. C语言中以二进制形式输出文件
  3. Linux系统C语言遍历系统文件系统,并查询其磁盘使用率(有效磁盘)
  4. C语言使用函数参数传递中的省略号:va_list, va_start, va_arg, va_end
  5. Linux指令:sed和awk指令
  6. arraylist、map、queue、stack总结
  7. java蛮力法解决任务分配问题_【算法题】任务分配问题---匈牙利算法
  8. java api 第一个类是_JAVA之Object常用API
  9. 为什么二级菜单会被挡住_父页面弹出菜单被子页面挡住问题
  10. 建立一个lstm_基于LSTM的双色球预测(一)