hello

Menu

【爬虫学习笔记04】使用cookie类操作

由于我们访问页面时,cookie都会由浏览器自动加入包发送给服务器端,以便检验身份信息,故cookie操作也是一大重点。当然我们可以像发送User-Agent那样,将cookie手动加入header中,不过这不便于我们每次重新启动程序,因为这样每次都得从浏览器端拷贝一份cookie过来用。【再写另一个脚本程序实现拷贝功能不就好啦(

咳咳,以上为学习cookie操作的必要性,接下来是实际操作

python3中,有个神奇的库叫做http,这个库里有个神奇的模块叫做cookiejar,这个神奇的模块底下有个神奇的函数有堆神奇的函数可以用来操作cookie

首先引用入需要的库

然后定义一个cookiejar实例出来【这个地方的神仙操作我实在没搞懂,就抄代码了

接着定义handler处理器

再定义opener(打开器?

最后只要经过获取一次cookie操作,我们再使用opener就可以猥琐为所欲为了

不保存cookie的代码:

结果如下:

第二次访问该网站时,该网站并没有接收到我们的cookie信息


保存cookie版本的代码:

这里我只修改了一句代码,即定义handler那句,但是结果就不一样了,当我们请求获取cookie后,再次访问该网站时,该网站显示有接收到cookie值,结果如图:

故代码是有效用的。


还有个问题,假如程序有可能随时中断,但是再次请求cookie会很麻烦,这种情况下为了不因为反复请求登陆而被封IP,可以考虑把cookie值存在文件中,以便继续运行程序时使用【说是这么说,其实我觉得存起来意义好像不大

这是一个我也不知道原理的操作,官方文档里解释得也不清楚,所以就背代码先

这么写以后,目录下就会出现一个cookie.txt,里面存放着cookie

运行打印结果如下


上面是保存操作,读取操作的代码更加短小精悍

运行结果如下:


至此

 

学习过程中也许会遇到很多看不懂的东西,但是无碍于继续学习,以前学c++也会看不懂很多概念,但是用着用着某天会突然释然,所以并不需要太在意这些小部分。

— 热度:282 ℃
— 于 共写了1093个字
— 文内使用到的标签:

发表评论

电子邮件地址不会被公开。 必填项已用*标注