开发者

Python webdriver.Chrome()的使用解读

开发者 https://www.devze.com 2023-02-26 09:16 出处:网络 作者: HHT0506
目录webdriver.Chrome()的使用1.前提2.chromedriver.exe版本选择及下载3.安装4.添加环境变量5.测试代码webdriver.Chrome参数解释通过源码看解释总结webdriver.Chrome()的使用
目录
  • 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 Chrome

    Python webdriver.Chrome()的使用解读

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

    Python webdriver.Chrome()的使用解读

    3.安装

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

    • Chrome目录:比如C:\Program Files (开发者_Go入门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 - Dictiona编程客栈ry object with non-browser specific
         capabilities only, such as "proxy" or "loggingPref".
        - service_log_path - Where to l编程og information from the driver.
        - chrome_options - Deprecated argument for options
        - keep_alive - Whether to confijsgure ChromeRemoteConnection to use HTTP keep-alive.
    """

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

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

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

    参数解释android:

    • 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路径。

    总结

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

    0

    精彩评论

    暂无评论...
    验证码 换一张
    取 消

    关注公众号