Pythonwebdriver.Chrome()的使用解读

2023-02-27 09:01:47
目录
webdriver.Chrome()的使用1.前提2.chromedriver.exe版本选择及下载3.安装4.添加环境变量5.测试代码webdriver.Chrome参数解释通过源码看解释总结

webdriver.Chrome()的使用

1.前提

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

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

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

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

    3.安装

    下载后解压,将>

      Chrome目录:比如C:\Program Files (x86)\Google\Chrome\ApplicationPython目录:比如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路径。

        总结

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