为啥Python2.7爬虫无法获取全部Cookie
用requests的session()方法就是了,s = requests.session()r = s.post(url, data) # 登录s.get(url1) 这是保持登录状态的访问
■网友
这个问题没有仔细去研究,只是根据我写浏览器程序所做的推断。Cookie是一种特定的数据结构,里面存的数据不一定都通过http来自网站,编写浏览器相关的程序的时候,知道cookie这个数据结构有个字段:isHttpOnly,如果设置为true表示只能由http修改cookie值。那如果是false会发生什么呢?cookieManager开放了一个方法add(),可以添加cookie所以我猜测是不是在浏览器侧添加了其他cookie,从而造成你观察到的现象?不过我没有去实际检验过
■网友
一般有反爬的网站,cookie值你直接抓肯定抓不全,因为有一部分是他自定义函数生成的,一般都是跟时间戳有关,你需要找到它的生成方式,然后破解模拟生成,组成一个完成的cookie
■网友
如果禁掉了js,只可能是 @宫伟峰提到的重定向问题,你拿到的是重定向之前的cookie,重定向之后的页面里的cookie你没有拿到, 但是那个重定向之前的cookie至少包含了你的sessionid
■网友
Python的我不懂,以前也写过也是跟洛克的方法一样。 不过我用Java写的时候也遇到了这样的问题,用HttpURLConnection 获取的cookies是不完整的,但是用JSoup就能获取完整的cookies,后来我禁止了 HttpURLconnection 自动访问重定向的页面,就拿到了完整的cookies。不知道你的是不是这个问题,权当提个思路。
■网友
使用瑞雪采集云, 可以轻松的处理cookie的问题:
企业爬虫专家:适合企业使用的数据采集平台-瑞雪采集云
■网友
【为啥Python2.7爬虫无法获取全部Cookie】 我也是遇到这个问题了,要爬去的网站是java写的,模拟登录后提示登录成功,获取到的jsessionid再次请求就无法获取登录后的页面,经我测试这个jsessionid确实没有登录。我浏览器查看的时候,请求login方法的时候,request包含已经登录后的jsessionid,response 的setcookie 的jseessionid根本无法请求登录后的页面。困扰我好多天了,没想到解决办法,本来想抓包看看具体请求过程,可是我们的计算机不允许使用代理。
推荐阅读
- 为啥看到书柜上的藏书会有心旷神怡的感觉
- 为啥知乎上普便有一种【我在北上广深打工,所以拥有更好的视野】这样的错觉
- 为啥工商银行的用户体验如此之差
- 汽车|看了中消协4S店服务测评调查结果,终于知道法系车为啥卖不好了
- 你为啥从窝窝商城离职?
- 为啥5G和2.4G默认的BSSID是相同的
- 为啥电器实体店的价格比淘宝贵那么多
- python 爬虫,咋获得输入验证码之后的搜索结果
- 现在在线学习视频有很多了,为啥大部分人还是喜欢下载下来观看
- 为啥到现在你还没有女朋友 ?
