selenium打开指定Chrome账号

  1. 获取User Data路径

    打开目标Chrome,在搜索栏输入chrome://version,找到“个人资料路径”。

    这里获取到的路径为:C:\Users\Admin\AppData\Local\Google\Chrome\User Data,去掉后面的\Profile 2。

  2. 获取--profile-directory值

    方法一:

    上图User Data路径末尾的“Profile 2”即为--profile-directory值。

    方法二:

    右键目标Chrome的桌面图标,点击属性可看到--profile-directory值为“Profile 2”。

  3. 代码演示

    from time import sleep
    
    from selenium import webdriver
    
    options = webdriver.ChromeOptions()
    # 步骤1获取到的User Data路径
    options.add_argument(r'--user-data-dir=C:\Users\Admin\AppData\Local\Google\Chrome\User Data')
    # 步骤2获取到的--profile-directory值
    options.add_argument("--profile-directory=Profile 2")
    driver = webdriver.Chrome(options=options) driver.get("https://www.baidu.com/")
    sleep(3)
    driver.quit()

    注意:此时已实现打开目标Chrome,但当电脑已有打开的Chrome浏览器时,运行到第10行时会报错:user data directory is already in use, please specify a unique value for --user-data-dir argument, or don't use --user-data-dir

    解决1:在运行脚本之前关闭所有Chrome实例。即关闭所有Chrome浏览器

    解决2(推荐):复制一份“Profile 2”文件夹到自己的目录,专门用于自动化。

    复制到自己的目录下:C:\Users\Admin\Desktop\AutoTest\ChromeData

  4. 修改代码

    from time import sleep
    
    from selenium import webdriver
    
    options = webdriver.ChromeOptions()
    # 修改路径为自己的目录
    options.add_argument(r'--user-data-dir=C:\Users\Admin\Desktop\AutoTest\ChromeData')
    options.add_argument("--profile-directory=Profile 2")
    driver = webdriver.Chrome(options=options) driver.get("https://www.baidu.com/")
    sleep(3)
    driver.quit()

    至此,解决了多开Chrome时运行脚本报错的问题~

selenium打开指定Chrome账号的更多相关文章

  1. Selenium及Headless Chrome抓取动态HTML页面

    一般的的静态HTML页面可以使用requests等库直接抓取,但还有一部分比较复杂的动态页面,这些页面的DOM是动态生成的,有些还需要用户与其点击互动,这些页面只能使用真实的浏览器引擎动态解析,Sel ...

  2. python selenium 模拟登陆百度账号

    代码: from selenium import webdriver url = 'https://passport.baidu.com/v2/?login' username = 'your_use ...

  3. Java程序打开指定地址网页

    1.今天遇到了需要手动输入http地址打开指定网页的需求,试着做一个用程序打开指定网页的功能,搜了一下,还真有一个现成的例子,稍加改造,实现自己的需求: 2.代码不多,两个文件:如下: package ...

  4. selenium:chromedriver与chrome版本的对应关系

    转自:http://blog.csdn.NET/huilan_same/article/details/51896672 再使用selenium打开chrome浏览器的时候,需要用chromedriv ...

  5. selenium 定制启动chrome的参数

    selenium 定制启动chrome的参数 设置代理. 禁止图片加载 修改ua https://blog.csdn.net/vinson0526/article/details/51850929 1 ...

  6. 获取打开指定Action的所有应用包名

    获取打开指定功能的所有应用:发消息,分享等等. 如打开网页,下面代码即可查看所有的浏览器 //查找所有浏览器 private void queryPackage() { PackageManager ...

  7. 浅入浅出EmguCv(三)EmguCv打开指定视频

    打开视频的思路跟打开图片的思路是一样的,只不过视频是由一帧帧图片组成,因此,打开视频的处理程序有一个连续的获取图片并逐帧显示的处理过程.GUI同<浅入浅出EmguCv(二)EmguCv打开指定图 ...

  8. 浅入浅出EmguCv(二)EmguCv打开指定图片

    从这篇文章开始,会介绍一些通过EmguCv实现的一些简单的功能,这个内容的更新会跟我学习OpenCv的进度有关,最近在看一本关于OpenCv的书——<学习OpenCv>,主要例子还是通过这 ...

  9. [转]C#中调用资源管理器(Explorer.exe)打开指定文件夹 + 并选中指定文件 + 调用(系统默认的播放类)软件(如WMP)打开(播放歌曲等)文件

    原文:http://www.crifan.com/csharp_call_explorer_to_open_destinate_folder_and_select_specific_file/ C#中 ...

随机推荐

  1. xx局点FusionCloud6.3 type1 计算配额失败问题

    现象: 排查过程: 1.登录云平台部署面,选择部署资源-服务器 2.找到MOC-ManageOne-Service01.MOC-ManageOne-Service02两台机器ip地址. 3.用ssh工 ...

  2. 重磅!Vertica集成Apache Hudi指南

    1. 摘要 本文演示了使用外部表集成 Vertica 和 Apache Hudi. 在演示中我们使用 Spark 上的 Apache Hudi 将数据摄取到 S3 中,并使用 Vertica 外部表访 ...

  3. v-for key值?

    不写key值会报warning, 和react的array渲染类似. 根据diff算法, 修改数组后, 写key值会复用, 不写会重新生成, 造成性能浪费或某些不必要的错误

  4. python 列表,字典,元组,字符串,QuerySet之间的相互转换

    1. 列表转换成字典list1 = ['key1','key2','key3']list2 = ['value1','value2'] dict1 = zip(list1,list2) # dict( ...

  5. Oracle SQL Developer.exe双击启动错误信息dll未找到

    下载地址:https://www.oracle.com/tools/downloads/sqldev-downloads.html 官网相应的解决方法已经说明了

  6. 什么是 YAML?

    YAML 是一种人类可读的数据序列化语言.它通常用于配置文件. 与属性文件相比,如果我们想要在配置文件中添加复杂的属性,YAML 文件就更加 结构化,而且更少混淆.可以看出 YAML 具有分层配置数据 ...

  7. 哪一个List实现了最快插入?

    LinkedList和ArrayList是另个不同变量列表的实现.ArrayList的优势在于动态的增长数组,非常适合初始时总长度未知的情况下使用.LinkedList的优势在于在中间位置插入和删除操 ...

  8. 有哪些不同类型的IOC(依赖注入)方式?

    构造器依赖注入:构造器依赖注入通过容器触发一个类的构造器来实现的,该类有一系列参数,每个参数代表一个对其他类的依赖. Setter方法注入:Setter方法注入是容器通过调用无参构造器或无参stati ...

  9. resion 学习笔记

    resin是一个非常流行的web引用服务器,对servlet和jsp提供了良好的支持,自身采用java开发,支持集群,还支持PHP. resin分为普通版和专业版,主要区别是专业版支持缓存和负载均衡. ...

  10. 学习zabbix(一)

    一.zabbix监控简介 server: 通过收集snmp和agent发送的数据,写入数据库(MySQL,ORACLE),再通过 php+apache 在 web 前端展示. agent:主机通过安装 ...