selenium使用chrome多开并且cookie独立

使用场景:项目中使用selenium驱动chrome执行登录网站、获取数据操作.但发现启动多个chrome,多个帐号同时登录时,cookie是共享的,无法达到多个帐号同时登录的目的.

解决思路:发现chrome是支持多用户的,每次使用不同用户启动chrome,这样就可以达到cookie独立效果.(前提需要手动新建N个chrome用户,然后copy User Data文件夹N份,编号重命名)

编码设置:

//Chrome地址栏输入chrome://version/,查看自己的“个人资料路径”

/** 注意:使用chrome多用户时,先在浏览器创建多用户,然后copy User Data文件夹多份,在设置用户时,每个用户单独使用一个User Data**/
ChromeOptions options = new ChromeOptions();
//设置用户配置文件夹
String userDataPath = CARDResources.getString("chrome.userdata.path");
options.addArguments("--user-data-dir=" + userDataPath + "/ChromeUserData" + userDirIndex.get());
//设置用户
options.addArguments("--profile-directory=Profile " + userDirIndex.get());
userDirIndex.getAndIncrement();
ChromeDriver driver = new ChromeDriver(options);

时间: 2024-09-29 00:31:51

selenium使用chrome多开并且cookie独立的相关文章

Chrome扩展开发之Chrome扩展的文件结构

一个Chrome扩展包括一系列文件,HTML文件.CSS样式文件.JavaScript脚本.图片等,以及一个最有特点的manifest.json. 1. manifest.json是啥 它是每个chrome扩展有且只有一个的清单文件,它指明了该扩展的基本信息,如名称.版本.需要的权限等等,格式是json. JSON JSON是一种独立于语言和平台的数据格式,JSON对象就是一种格式化的静态的数据,接下来的chrome扩展中各模块之间交换信息就是用这种格式.传送时就是作为简单的字符串来传,js在收

【python爬虫】利用selenium和Chrome浏览器进行自动化网页搜索与浏览

功能简介:利用利用selenium和Chrome浏览器,让其自动打开百度页面,并设置为每页显示50条,接着在百度的搜索框中输入selenium,进行查询.然后再打开的页面中选中“Selenium - 开源中国社区”,并打开页面 知识简介: selenium的作用: 1).最初用于网站自动化测试,近几年,用于获取精确的网站快照. 2).可以直接运行在浏览器上,让浏览器自动加载页面,获取需要的数据,还可以页面截屏,或者判断网站上某些动作是否发生. 项目步骤: 1.利用google的Chrome浏览器

IE/Firefox/Chrome等浏览器保存Cookie的位置

IE/Firefox/Chrome等浏览器保存Cookie的位置 原文  http://smilejay.com/2013/04/browser-cookie-location/ 前面写了篇长文( 使用Jmeter登录WordPress的问题 )中也重点是Cookie的问题,这里再简单说下什么是Cookie并且列举一下主流浏览器保存Cookie的位置吧. 什么是Cookie? A cookie, also known as an HTTP cookie, web cookie, or brows

selenium启动Chrome时,加载用户配置文件

selenium启动Chrome时,加载用户配置文件 Selenium操作浏览器是不加载任何配置的,网上找了半天,关于Firefox加载配置的多点,Chrome资料很少,下面是关于加载Chrome配置的方法: 一.加载所有Chrome配置 用Chrome地址栏输入chrome://version/,查看自己的“个人资料路径”,然后在浏览器启动时,调用这个配置文件,代码如下: #coding=utf-8 from selenium import webdriver option = webdriv

selenium启动chrome出错处理:Message: 'chromedriver' executable needs to be in PATH

selenium启动chrome出错处理:Message: 'chromedriver' executable needs to be in PATH

让 Visio 2003/2007 同时开多个独立窗口

1. 打开 Visio 2003/2007 2. 点击菜单[工具] -> [选项]: 3. 在弹出的“选项” 对话框中选择“高级”选项页: 4. 去掉“在同一窗口中打开每一 ShapeSheet” 前的对勾: 5. 选中“将所有设置放入 Windows 注册表中” 前的对勾: 6. 最好关闭 Visio 再打开,确保将设置项写入注册表: 7. 点[开始]菜单,点“运行(R)...”,输入 regedit 打开注册表编辑器: 8. 进入 HKEY_CURRENT_USER/Software/Mic

selenium与chrome浏览器及驱动的版本匹配

用selenium+python+webdriver完成UI功能自动化,经常会碰到浏览器版本与驱动的版本不匹配而引起报错,下面就selenium与chrome浏览器及驱动的版本匹配 做个总结. 使用WebDriver在Chrome浏览器上进行测试时,需要先下载与本机chrome浏览器对应的驱动程序,驱动程序名为chromedriver:chromedriver的版本需要和本机的chrome浏览器对应,才能正常使用,具体步骤如下: 第一步:下载对应版本的chromedriver驱动文件,具体版本请

使用CefSharp在.Net程序中嵌入Chrome浏览器(十)——独立文件夹部署

原文:使用CefSharp在.Net程序中嵌入Chrome浏览器(十)--独立文件夹部署 CefSharp本身携带了一大堆文件,这些文件默认直接释放在exe文件底下,这种方式本身没有什么问题,但多了一大堆文件后不是很好看.本文这里就介绍一个方法,使得可以将CEF相关的文件部署到独立的文件夹. 在开始改造之前,还是得另外新建一个工程安装一次CEFSharp,这样才能获取到相关资源文件.然后从这些资源文件中分离出来. 首先把CEF进程相关的文件拷贝到一个独立的文件夹: 然后我们的程序中只需要引用CE

早上在linux下用selenium启动Chrome时出现问题:

早上在linux下用selenium启动Chrome时出现问题:报错: Traceback (most recent call last): File "get2.py", line 62, in <module> browser = webdriver.Chrome() File "/root/.pyenv/versions/anaconda3-5.1.0/lib/python3.6/site-packages/selenium/webdriver/chrome