Pythonwebdriver.Chrome()的使用解读

2023-02-25 11:02:19 解读 chrome Pythonwebdriver

webdriver.Chrome()的使用

1.前提

python与Chrome路径下均安装chromedriver.exe

2.chromedriver.exe版本选择及下载

  • 下载地址为:Http://npm.taobao.org/mirrors/chromedriver/
  • Chrome版本查看:浏览器右上角三个点->帮助->关于Google Chrome

chromedriver.exe版本需要与浏览器版本一致:

3.安装

下载后解压,将 chromedriver.exe复制到下面两个目录中:

  • Chrome目录:比如C:\Program Files (x86)\Google\Chrome\Application
  • Python目录:比如D:\Softwares\python39

4.添加环境变量

将上述Chrome路径添加进系统环境光变量,Python使用时应该加入环境变量了,这个就不用管了。

5.测试代码

import time
from selenium import webdriver
driver = webdriver.Chrome()
driver.get('https://www.baidu.com/')
driver.find_element_by_id("kw").send_keys(u"胡皓天")
driver.find_element_by_id("su").click()

webdriver.Chrome参数解释

通过源码看解释

最直接最不讲道理的方式就是看源码,使用之前一定要学会看说明书。

打算使用jupyter演示的,但是jupyter不支持看源码,所以使用PyCharm吧。

from selenium import webdriver

Broswer = webdriver.Chrome(executable_path="chromedriver", port=0,
                 options=None, service_args=None,
                 desired_capabilities=None, service_log_path=None,
                 chrome_options=None, keep_alive=True)
print(webdriver.Chrome.__doc__)
"""
 Controls the ChromeDriver and allows you to drive the browser.

 You will need to download the ChromeDriver executable from
    http://chromedriver.storage.googleapis.com/index.html
"""
print(webdriver.Chrome.__init__.__doc__)
"""
Creates a new instance of the chrome driver.

        Starts the service and then creates new instance of chrome driver.

        :Args:
         - executable_path - path to the executable. If the default is used it assumes the executable is in the $PATH
         - port - port you would like the service to run, if left as 0, a free port will be found.
         - options - this takes an instance of ChromeOptions
         - service_args - List of args to pass to the driver service
         - desired_capabilities - Dictionary object with non-browser specific
           capabilities only, such as "proxy" or "loggingPref".
         - service_log_path - Where to log infORMation from the driver.
         - chrome_options - Deprecated argument for options
         - keep_alive - Whether to configure ChromeRemoteConnection to use HTTP keep-alive.
"""

Chrome Doc解释: 控制ChromeDriver并允许您驱动浏览器。

你需要从http://chromedriver.storage.googleapis.com/index.html下载ChromeDriver的可执行文件。

没有下ChromeDriver的小伙伴根据自己浏览器版本下载相应的ChromeDriver版本,两者版本关系ChromeDriver版本>=Chrome版本。

参数解释:

  • executable_path - 可执行文件的路径。如果使用默认值,则假定可执行文件位于$PATH中。
  • port- 你希望服务运行的端口,如果为0,使用空闲端口。
  • options - 这是ChromeOptions的一个实例
  • service_args - 要传递给驱动程序服务的args列表
  • desired_capabilities -仅具有非浏览器特定功能的字典对象,例如“proxy”或“loggingPref”。
  • service_log_path - 记录来自驱动程序的信息存放路径。
  • chrome_options - chrome选项。
  • keep_alive -是否配置ChromeRemoteConnection使用HTTP keep-alive。

其中options和chrome_options:使用options代替chrome_options。

 if chrome_options:
            warnings.warn('use options instead of chrome_options',
                          DeprecationWarning, stacklevel=2)
            options = chrome_options

并且告知此警告被弃用

关于executable_path解释:value是ChromeDriver.exe路径。

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持。

相关文章