前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Scrapy设置cookie

Scrapy设置cookie

作者头像
周小董
发布2019-03-25 11:03:30
3.4K0
发布2019-03-25 11:03:30
举报
文章被收录于专栏:python前行者python前行者

当我使用scrapy爬瓜子二手车的时候,响应的页面竟然不是正常的页面。

然后想到了瓜子二手车可能需要验证cookie跟header。

接着到浏览器复制了请求头的键值对,粘贴到了scrapy的settings文件的EFAULT_REQUEST_HEADERS的字典里面

接着把COOKIES_ENABLED设置了为True,表示激活cookie。

接着马上尝试访问瓜子二手车,结果还是不行。

然后各种尝试。。。。。。。。。。。。。。

最后终于发现的问题所在

当COOKIES_ENABLED是注释的时候scrapy默认没有开启cookie

当COOKIES_ENABLED没有注释设置为False的时候scrapy默认使用了settings里面的cookie

当COOKIES_ENABLED设置为True的时候scrapy就会把settings的cookie关掉,使用自定义cookie

所以当我使用settings的cookie的时候,又把COOKIES_ENABLED设置为True,scrapy就会把settings的cookie关闭,

而且我也没使用自定义cookie,导致整个请求根本没有cookie,导致获取页面失败。

总结:

如果使用自定义cookie就把COOKIES_ENABLED设置为True

如果使用settings的cookie就把COOKIES_ENABLED设置为False

用中间件CookieMiddleware时,要设置为True,如果使用中间件UserAgentmiddleware,在请求头里设置cookies,要设置为False,测试的结果

参考:https://blog.csdn.net/qq_38949193/article/details/81410582

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018年11月20日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
消息队列 TDMQ
消息队列 TDMQ (Tencent Distributed Message Queue)是腾讯基于 Apache Pulsar 自研的一个云原生消息中间件系列,其中包含兼容Pulsar、RabbitMQ、RocketMQ 等协议的消息队列子产品,得益于其底层计算与存储分离的架构,TDMQ 具备良好的弹性伸缩以及故障恢复能力。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档