快捷搜索:  汽车  科技

pythonselenium获取cookie(selenium自动化之cookie获取与登录)

pythonselenium获取cookie(selenium自动化之cookie获取与登录)在程序和参数不写错的情况下,运行这段代码,访问百度页面后,账户就被登陆了。这只是获取cookie和使用cookie的一种方式,下篇说明其它的方式。

cookie有两种,一种是会话级别的,一种是有有效期的,会话级别的cookie就不能用add_cookie的方法了,因为一次会话过程(从打开浏览器到关闭浏览器,断开连接)结束后它就失效了。下面以百度首页登录为例,如何获取cookie和使用cookie进行免登录操作。

获取cookie方式

查看cookie的方法有几种,可以使用fidller抓包能够看到cookie的name和value值,但不是特别全面;也可以使用浏览器按F12,Chrome按F12,点击Application,左边点击Cookies,选择需要查看的url,下图为Firefox查看百度用户登录后的cookie信息,点击“存储”,左侧点击Cookie。这里看到的信息比使用fidller抓包看到的信息更全面。

pythonselenium获取cookie(selenium自动化之cookie获取与登录)(1)

使用cookie免登陆

根据上图中获取到cookie中的BAIDUID和BDUSS的name和value复制并保存,在程序中使用add_cookie()把BAIDUID和BDUSS的键值传递给cookie。

from selenium import webdriverfrom time import sleep
driver = webdriver.Firefox()driver.implicitly_wait(20)driver.get("https://www.baidu.com")driver.add_cookie({'name':'BAIDUID' 'value':'774AD7E55B8613FB226DE2704CDF0BC8:FG=1'})driver.add_cookie({'name':'BDUSS' 'value':'TQ2MzBqSjUteW5aMVJxRUxrRFRlNn5yVHNIVGRmakR2RGJKTmdqU3g0T3JhVkJmRVFBQUFBJCQAAAAAAAAAAAEAAABlJV0UdGlla3VuMDgxNj5OTAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKcKF-r3ChfZ'})
sleep(3)driver.refresh()

在程序和参数不写错的情况下,运行这段代码,访问百度页面后,账户就被登陆了。

pythonselenium获取cookie(selenium自动化之cookie获取与登录)(2)

这只是获取cookie和使用cookie的一种方式,下篇说明其它的方式。

猜您喜欢: