首页 » SEO优化 » phpcurl爬虫cookies技巧_爬虫cookies详解

phpcurl爬虫cookies技巧_爬虫cookies详解

访客 2024-11-15 0

扫一扫用手机浏览

文章目录 [+]

Cookie,有时也用其复数形式 Cookies,指某些网站为了辨别用户身份、进行 session 跟踪而储存在用户本地终端上的数据(常日经由加密)。
定义于 RFC2109 和 2965 中的都已废弃,最新取代的规范是 RFC6265[1]。
Cookie实在便是浏览器缓存。

cookie的生命周期

phpcurl爬虫cookies技巧_爬虫cookies详解

会话cookie:没有设置expires(是个韶光戳)的,浏览器(session)关闭后,就自动失落效持久cookie:设置了expires的,根据设置的失落效韶光决定(expires韶光是可以进行修正的, 但是很多网站会做防止修正的设置)

cookie具有的属性

phpcurl爬虫cookies技巧_爬虫cookies详解
(图片来自网络侵删)
name:为一个cookie的名称。
value:为一个cookie的值。
domain:为可以访问此cookie的域名,譬如www.baidu.com:baidu.com便是顶级域名

域名的划分:http://aaa.bbb.secode.first.com,每一个点划分为一个域名,域名从后向前一次为顶级、一级、二级等。

非顶级域名,如二级域名或者三级域名,设置的cookie的domain只能为顶级域名或者二级域名或者三级域名本身,不能设置其他二级域名的cookie,否则cookie无法天生。
顶级域名只能设置domain为顶级域名,不能设置为二级域名或者三级域名,否则cookie无法天生。
二级域名能读取设置了domain为顶级域名或者自身的cookie,不能读取其他二级域名domain的cookie。
以是要想cookie在多个二级域名中共享,须要设置domain为顶级域名,这样就可以在所有二级域名里面或者到这个cookie的值了。
顶级域名只能获取到domain设置为顶级域名的cookie,其他domain设置为二级域名的无法获取。

总结一下:域名具有继续性,只能利用其自身或其父辈的域名,不能利用其子域名或者兄弟域名。
例如:

a.b.c.d.com

a.b.x.d.com

c可以利用domain为d.com或者c.d.com的域名cookie,不能利用x.d.com的域名或者b.c.d.com,这里大家做好理解就行了,碰到这种情形知道有这么个情形就行,一样平常我们须要关注的很少。

path:为可以访问此cookie的页面路径。
比如www.jianshu.com/u/680e0e38ddc9,path便是/u/680e0e38ddc9,那么只有/u/680e0e38ddc9路径下的页面可以读取此cookie。
expires/Max-Age :为此cookie超时时间。
若设置其值为一个韶光(一个韶光戳),那么当到达此韶光后,此cookie失落效。
不设置的话默认值是Session,意思是cookie会和session一起失落效。
当浏览器关闭(不是浏览器标签页,而是全体浏览器) 后,此cookie失落效。
Size: 此cookie大小。
http: cookie的httponly属性。
若此属性为true,则只有在http要求头中会带有此cookie的信息,而不能通过document.cookie来访问此cookie。
secure : boolean型,默认为false,设置是否只能通过https来通报此cookie

我们做爬虫重点关注name和value。

cookie运用

以任何办法,如浏览器、selenium、封包办法等,得到对应的cookies将cookies保存,可以是在内存、文件、数据库等在你想要运用已有的cookie的 项目 中,已各种办法:文件、数据库、网络等,获取到对应的cookie,然后进行设置,接着就可以访问对应的资源了

实际运用:

有几台专门的做事器,进行登录操作,所有账号保存在数据库,由这些专门登录的做事器进行登录操作,登录成功后,保存cookies到数据库有专门的运用做事器,从数据库读取cookies,进行相应的业务操作,这种做事器不处理登录操作

PS:

cookie的运用,必须是做事器支持不同的session可以利用同一个cookieexpires是一个客户端和做事器的君子约定,浏览器检测到失落效了,就不会读取这个cookie,大部分网站都不会检测这个cookie失落效,部分哀求严格的网站是会检测的,和做事器韶光进行比对,判断是否失落效。
cookie都是由做事器设置的,你客户端设置没意义,做事器不会进行验证,通过response的headers中set-cookie设置

留在末了的话:并不是所有网站都适宜保存cookies进行登录,怎么检讨哪些网站可以利用保存cookies进行登录呢?我们可以在浏览器中进行登录操作,登录成功后,关闭浏览器,然后重新打开浏览器往后访问此网站,看看是否处于登录状态,如果是登录状态,那么这个网站很大程度上是可以利用cookies进行访问操作的。

如果你以为我的文章还可以,可以关注我的微信"大众号,查看更多实战文章:Python爬虫实战之路

标签:

相关文章

我国土地利用分类代码的构建与应用

土地利用分类代码是我国土地管理的重要组成部分,是土地资源调查、规划、利用和保护的依据。土地利用分类代码的构建与应用显得尤为重要。本...

SEO优化 2025-02-18 阅读1 评论0

微信跳转微信支付便捷支付体验的秘密武器

移动支付已成为人们日常生活中不可或缺的一部分。作为我国领先的社交平台,微信支付凭借其便捷、安全的支付方式,深受广大用户的喜爱。而微...

SEO优化 2025-02-18 阅读1 评论0

探寻会计科目代码背后的奥秘分类与

会计科目代码是会计信息系统中不可或缺的组成部分,它将企业的经济活动进行分类和归纳,为会计核算、财务分析和决策提供重要依据。本文将从...

SEO优化 2025-02-18 阅读1 评论0