Python Selenium无法打开Chrome浏览器处理自定义浏览器路径

问题

在使用Python Selenium控制Chrome浏览器操作的过程中,由于安装的Chrome浏览器的版本找不到对应版本的驱动chromedriver.exe文件,下载了小几个版本号的驱动软件。发现运行下面的代码是无法正常使用的:

from selenium import webdriver
driver = webdriver.Chrome()

报错内容如下:
在这里插入图片描述

There was an error managing chromedriver (request or response body error: operation timed out);
WebDriverException Traceback (most recent call last) Cell In[4], line 1----> 1 driver =webdriver.Chrome()。
WebDriverException: Message: unknown error: cannot find Chrome binary

主要就是运行

driver = webdriver.Chrome()

的时候报错,我一直以为是Chrome版本和chromedriver版本不一致的问题,所以特意在CNPM Binaries Mirror下载了对应版本的Chrome浏览器。但是其实也不行。可能的原因是浏览器没有进行默认安装的方式。因为我这的浏览器都是解压即用的,所以要解决就需要重新下载安装浏览器了。这里我不太想采用这种方式,所以找了其它方法。

解决方法

采用的方式是指定Chrome浏览器程序路径的方式:

from selenium import webdriver

chrome_opt= webdriver.ChromeOptions()
chrome_opt.binary_location = "E:\****\Google\Chrome\Application\chrome.exe"
driver = webdriver.Chrome(chrome_opt)

url = "https://www.baidu.com/"
driver.get(url)

这里通过webdriver.ChromeOptions() 新建了Chrome浏览器的选项,然后通过binary_location设置Chrome浏览器程序的路径。
采用这种方式就指定了浏览器的路径,能够顺利控制浏览器了,我这里测试过两个版本的浏览器都是可以控制的:
在这里插入图片描述

其它常用选项参数:

add_argument(argument):添加命令行参数。 >window_size:设置浏览器窗口的大小。
disable_extensions:禁用扩展程序。 >binary_location:设置Chrome浏览器可执行文件的路径。

其它详细说明请看:https://www.selenium.dev/zh-cn/documentation/webdriver/drivers/options/

最近更新

  1. TCP协议是安全的吗?

    2024-04-24 09:50:06       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-04-24 09:50:06       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-04-24 09:50:06       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-04-24 09:50:06       18 阅读

热门阅读

  1. 13反射机制

    2024-04-24 09:50:06       12 阅读
  2. CentOS 7 常用命令大全

    2024-04-24 09:50:06       14 阅读
  3. C语言-结构体基本概念

    2024-04-24 09:50:06       14 阅读
  4. css设置子元素在父元素中水平垂直居中

    2024-04-24 09:50:06       17 阅读
  5. [网络编程]socket嵌套字的一些常用接口

    2024-04-24 09:50:06       14 阅读
  6. equals和==有什么区别?

    2024-04-24 09:50:06       15 阅读