Selenium打开网页时保持登陆状态

每次调试网页都会打开一个新的浏览器窗口,当我想要做某些操作的时候就需要自己再去模拟登陆,太浪费时间了。那么要怎么样才能在打开网页的时候直接就是登陆状态呢?

使用下面的方法就可以直接加载登陆过后的保存在本地的信息,而且不再需要手动登陆

方式一

python 复制代码
from selenium import webdriver
 
option = webdriver.ChromeOptions()
 
#添加保持登录的数据路径:安装目录一般在C:\Users\****\AppData\Local\Google\Chrome\User Data
option.add_argument(r"user-data-dir=C:\Users\Administrator\AppData\Local\Google\Chrome\User Data_Backup")
 
driver = webdriver.Chrome(options=option)
driver.get("https://www.csdn.net/")
driver.maximize_window()

方式二

控制现有浏览器,我们这边以Chrome浏览器为例,我们这里采用的是Chrome DevTools协议,他们为客户提供了检查和调试Chrome浏览器的便利功能。

具体步骤如下:

1、在控制台内打开Chrome浏览器的文件夹,进入chrome.exe文件路径

2、在命令行中输入命令:

python 复制代码
chrome.exe --remote-debugging-port=9222 --user-data-dir="D:\seleniu_chrom"

对于-remote-debugging-port参数,这里可以自由选择一个未被占用的端口号进行指定,后续在初始化Selenium连接的时候会用到该端口号。

至于--user-data-dir标志,它用于指定创建新Chrome用户数据文件夹的路径。这样做可以确保Chrome在一个新的、独立的配置文件中启动,从而避免对您的默认配置文件造成任何干扰。

3、执行完上述命令后,会生成打开一个全新的浏览器,可以在该浏览器上面进行初始化,新的用户数据也将会存在刚刚填入--user-data-dir参数的文件夹下面。

4、在进行好浏览器初始化后,在脚本中输入下述代码进行初始化,连接已开启的浏览器

python 复制代码
from selenium import webdriver
from selenium.webdriver.edge.options import Options
port=9222
chrome_options=Options()
chrome_options.add_experimental_option('debuggerAddress',f'127.0.0.1:{port}')
browser=webdriver.Edge(options=chrome_options)
browser.get('url')
#
#
#其余操作逻辑
相关推荐
小猿A1 天前
【2026最新】Apifox下载、配置、实战教程(附官网安装包)
测试工具
泽众云测试2 天前
泽众软件与广州华南检验检测中心签约,PerformanceRunner性能测试工具助力第三方测评机构性能检测能力升级
软件测试·测试工具·性能测试
@zulnger2 天前
Charles抓包工具
测试工具
ck0135792 天前
视频添加水印的实践:文字叠加、透明 PNG 与时间区间设置
图像处理·测试工具·音视频·视频
EVE จุ๊บ3 天前
playwright和selenium的区别是什么
selenium·测试工具
Meta Luo5 天前
页面改版后自动化用例大量失败,应该怎么维护?
运维·功能测试·测试工具·自动化
释槐鸟~5 天前
还不知道RIDE工具怎么装吗
测试工具·自动化
有技巧搬砖6 天前
为什么锂电池组的电池老化测试很重要?
测试工具·锂电池·电池老化
蒲公英内测分发6 天前
智能手表卖出去后,包装、说明书和官网里的 App 下载入口怎么统一?
前端·人工智能·测试工具·智能家居·智能硬件·智能手表
蒲公英内测分发6 天前
智能手环出海测试,海外合作方分散在不同国家,Android 测试包怎么持续分发和更新?
android·前端·人工智能·测试工具·智能手表