Selenium获取登录Cookies并添加Cookies自动登录的方法

 更新时间:2020年12月04日 12:03:52   作者:程序猿杂记  
这篇文章主要介绍了Selenium获取登录Cookies并添加Cookies自动登录的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

本章中用到的关键方法如下:

  • get_cookies(): 获得所有cookie信息。
  • get_cookie(name): 返回字典的key为“name”的cookie信息。
  • add_cookie(cookie_dict): 添加cookie。“cookie_dict”指字典对象,必须有name 和value 值。
  • delete_cookie(name,optionsString):删除cookie信息。“name”是要删除的cookie的名称,“optionsString”是该cookie的选项,目前支持的选项包括“路径”,“域”。
  • delete_all_cookies(): 删除所有cookie信息。

1、模拟登陆并获取Cookies

from selenium import webdriver
import time

driver = webdriver.Chrome()
driver.get('https://www.baidu.com/')

# 模拟登陆
driver.find_element_by_link_text('登录').click()
time.sleep(2)
driver.find_element_by_xpath('//*[@id="TANGRAM__PSP_10__footerULoginBtn"]').click()
time.sleep(2)
driver.find_element_by_name("userName").send_keys("账号")
driver.find_element_by_name("password").send_keys("密码")
driver.find_element_by_xpath('//*[@id="TANGRAM__PSP_10__submit"]').click()
time.sleep(20) #可能会出现验证码,手动点一下

# 获取cookies
cookies = driver.get_cookies()
print(cookies)
driver.quit()

2、添加Cookies自动登录

注:

获取Cookies的时候每个字典的字段不统一,全部添加会报错,所以本人只添加了比较重要的几个字段。
把代码中cookies字段的list换成上一步获取的内容,或者自己构建。

from selenium import webdriver
import time

driver = webdriver.Chrome()
driver.get('https://www.baidu.com/')
time.sleep(2)
cookies = [] #换成上一步获取的Cookies
for cookie in cookies:
 driver.add_cookie(
 {
  'domain':cookie['domain'],
  'name': cookie['name'],
  'value':cookie['value'],
  'path': cookie['path']
 }
 )
# # 刷新页面
driver.refresh()

# driver.quit() #为方便查看,页面就不关了

selenium 使用 cookies

selenium 需要先打开一个网址,才能加载进去cookies(知道cookies是哪个网站的)。添加完cookies再打开网址,使用cookies

前面读取的cookies 是一个包含着每一个cookies的name,value 的字典,即name1:value1,name2:value2字典。遍历添加网站使用的每一个cookies的name,value.

tbCookies = readTaobaoCookies()

brower.get("https://www.taobao.com")
for cookie in tbCookies:
 brower.add_cookie({
 "domain":".taobao.com",
 "name":cookie,
 "value":tbCookies[cookie],
 "path":'/',
 "expires":None
 })
brower.get("https://www.taobao.com")

Selenium文集传送门:

标题 简介
Python爬虫 - Selenium(1)安装和简单使用 详细介绍Selenium的依赖环境在Windows和Centos7上的安装及简单使用
Python爬虫 - Selenium(2)元素定位和WebDriver常用方法 详细介绍定位元素的8种方式并配合点击和输入、提交、获取断言信息等方法的使用
Python爬虫 - Selenium(3)控制浏览器的常用方法 详细介绍自定义浏览器窗口大小或全屏、控制浏览器后退、前进、刷新浏览器等方法的使用
Python爬虫 - Selenium(4)配置启动项参数 详细介绍Selenium启动项参数的配置,其中包括无界面模式、浏览器窗口大小设置、浏览器User-Agent (请求头)等等
Python爬虫 - Selenium(5)鼠标事件 详细介绍鼠标右击、双击、拖动、鼠标悬停等方法的使用
Python爬虫 - Selenium(6)键盘事件 详细介绍键盘的操作,几乎包含所有常用按键以及组合键
Python爬虫 - Selenium(7)多窗口切换 详细介绍Selenium是如何实现在不同的窗口之间自由切换
Python爬虫 - Selenium(8)frame/iframe表单嵌套页面 详细介绍如何从当前定位的主体切换为frame/iframe表单的内嵌页面中
Python爬虫 - Selenium(9)警告框(弹窗)处理 详细介绍如何定位并处理多类警告弹窗
Python爬虫 - Selenium(10)下拉框处理 详细介绍如何灵活的定位并处理下拉框
Python爬虫 - Selenium(11)文件上传 详细介绍如何优雅的通过send_keys()指定文件进行上传
Python爬虫 - Selenium(12)获取登录Cookies,并添加Cookies自动登录 详细介绍如何获取Cookies和使用Cookies进行自动登录
Python爬虫 - Selenium(13)设置元素等待 详细介绍如何优雅的设置元素等待时间,防止程序运行过快而导致元素定位失败
Python爬虫 - Selenium(14)窗口截图 详细介绍如何使用窗口截图
Python爬虫 - Selenium(15)关闭浏览器 详细介绍两种关闭窗口的区别

到此这篇关于Selenium获取登录Cookies并添加Cookies自动登录的方法的文章就介绍到这了,更多相关Selenium获取登录Cookies内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Python缺失值处理方法

    Python缺失值处理方法

    这篇文章主要介绍了Python缺失值处理方法,文章围绕主题展开详细内容介绍,具有一定的参考价值,需要的小伙伴可以参考一下
    2022-05-05
  • appium+python adb常用命令分享

    appium+python adb常用命令分享

    这篇文章主要介绍了appium+python adb常用命令分享,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-03-03
  • Python模拟实现高斯分布拟合

    Python模拟实现高斯分布拟合

    当我们绘制一个数据集(如直方图)时,图表的形状就是我们所说的分布,最常见的连续值形状是钟形曲线,也称为高斯分布或正态分布,下面我们就来利用Python模拟实现一下高斯分布吧
    2023-12-12
  • python实现高斯投影正反算方式

    python实现高斯投影正反算方式

    今天小编就为大家分享一篇python实现高斯投影正反算方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-01-01
  • Python3 列表list合并的4种方法

    Python3 列表list合并的4种方法

    这篇文章主要介绍了Python3 列表list合并的4种方法,需要的朋友可以参考下
    2021-04-04
  • python 实现的发送邮件模板【普通邮件、带附件、带图片邮件】

    python 实现的发送邮件模板【普通邮件、带附件、带图片邮件】

    这篇文章主要介绍了python 实现的发送邮件模板,包含Python发送普通邮件、带附件及带图片邮件相关实现技巧,需要的朋友可以参考下
    2019-07-07
  • Pygame出现播放背景音乐卡顿的问题分析及解决(发生在win10更新至win11后)

    Pygame出现播放背景音乐卡顿的问题分析及解决(发生在win10更新至win11后)

    Pygame是常用的游戏开发库之一,然而在使用Pygame的过程中,却出现了播放背景音乐卡顿的问题,表现为咯咯咯的噪音,所以本文记录了Pygame出现播放背景音乐卡顿的问题分析及解决,需要的朋友可以参考下
    2024-02-02
  • 使用Python实现图片转ICO格式

    使用Python实现图片转ICO格式

    这篇文章主要为大家详细介绍了如何使用Python编写一个基于PyQt5的用于将图像文件转换为ICO格式GUI应用程序,感兴趣的小伙伴可以跟随小编一起学习一下
    2025-01-01
  • pycharm2020.1.2永久破解激活教程,实测有效

    pycharm2020.1.2永久破解激活教程,实测有效

    很多使用pycharm2020.1.2版本的朋友,不知道如何激活破解,这篇文章主要介绍了pycharm2020.1.2永久破解激活教程,经小编实测有效,需要的朋友可以参考下
    2020-10-10
  • python+OpenCV实现图像拼接

    python+OpenCV实现图像拼接

    这篇文章主要为大家详细介绍了python+OpenCV实现图像拼接,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-03-03

最新评论