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')
#
#
#其余操作逻辑
相关推荐
蒲公英内测分发11 小时前
Typeoff:当 AI 开始参与工作,我们可能需要重新思考“输入”这件事
人工智能·测试工具·项目管理·语音输入·ai语音输入
LT101579744415 小时前
2026年手机机型兼容性测试选型指南:安卓机型碎片化、APP闪退UI错乱如何解决
android·测试工具·ui·智能手机
Luminbox紫创测控18 小时前
GB/T 5137.3 2020标准:汽车安全玻璃耐辐照与耐模拟气候试验方法
人工智能·测试工具·汽车·安全性测试·uv·测试标准
Alan_6911 天前
聊聊 Swagger/Postman/Apifox 的真实选型与 Python 项目实战
python·测试工具·postman
LT10157974442 天前
2026年IE/Chrome/Edge兼容测试选型指南:新旧浏览器内核差异大、后台系统渲染崩溃如何解决
测试工具
icsocket2 天前
芯片测试治具关键组成部分和设计考虑:机械结构中的夹具
测试工具
标致的自行车3 天前
Selenium 爬虫固定开头:
爬虫·selenium·测试工具
安然无虞4 天前
Python自动化测试·Selenium操控元素的方法
python·selenium·测试工具
Data_Journal4 天前
使用 Selenium 进行网页抓取:分步指南
selenium·测试工具·microsoft