zoukankan      html  css  js  c++  java
  • selenium webdriver启动Chrome浏览器后无法输入网址的解决办法

    通过selenium webdriver启动Chrome浏览器,脚本如下:

    from selenium import webdriver
    browser = webdriver.Chrome()
    browser.get("http://www.baidu.com")
    browser.find_element_by_id("kw").send_keys("selenium")
    browser.find_element_by_id("su").click()
    browser.quit()

    浏览器启动成功,但是地址无法输入,报错:ConnectionResetError: [WinError 10054] 远程主机强迫关闭了一个现有的连接。

    浏览器显示如下:

    selenium版本:3.0.1

    python版本3.5

    Chrome版本:54.0.2840.99 m

    修改以下部分脚本

    option= webdriver.ChromeOptions()
    option.add_argument('--user-data-dir=C:\UsersFFAppDataLocalGoogleChrome\User Data') #设置成用户自己的数据目录
    browser = webdriver.Chrome(chrome_options=option)

    修改后重新运行,报错:selenium.common.exceptions.WebDriverException: Message: unknown error: Runtime.executionContextCreated has invalid 'context': {"auxData":{"frameId":"3624.1","isDefault":true},"id":1,"name":"","origin":"://"}
      (Session info: chrome=54.0.2840.99)
      (Driver info: chromedriver=2.9.248315,platform=Windows NT 6.1 SP1 x86_64)

    表示chrome浏览器版本为54.0.2840.99,但是chromedriver版本为2.9.248315。版本不兼容

    网上找了遇到相同问题的解决办法 http://blog.csdn.net/u012246342/article/details/52860949

    下载v2.24版本的chromedriver.exe替换原有的chromedriver.exe(下载地址: http://chromedriver.storage.googleapis.com/index.html?path=2.24/ )

    重新运行脚本,第一次运行较慢,最终超时失败,第二次运行成功!!

    下面是关于加载Chrome配置的方法(网上copy的,保存留用):
      一、加载所有Chrome配置
      用Chrome地址栏输入chrome://version/,查看自己的“个人资料路径”,然后在浏览器启动时,调用这个配置文件,代码如下:
      #coding=utf-8
      from selenium import webdriver
      option = webdriver.ChromeOptions()
      option.add_argument('--user-data-dir=C:UsersAdministratorAppDataLocalGoogleChromeUser Data') #设置成用户自己的数据目录
      driver = webdriver.Chrome(chrome_options=option)


      二、修改浏览器的User-Agent来伪装你的浏览器访问手机m站
      #coding=utf-8
      from selenium import webdriver
      option = webdriver.ChromeOptions()
      option.add_argument('--user-agent=iphone')
      driver = webdriver.Chrome(chrome_options=option)
      driver.get('http://www.taobao.com/')


      三、浏览器启动时安装crx扩展
      #coding=utf-8
      from selenium import webdriver
      option = webdriver.ChromeOptions()
      option.add_extension('d:crxAdBlock_v2.17.crx') #自己下载的crx路径
      driver = webdriver.Chrome(chrome_options=option)
      driver.get('http://www.taobao.com/')

  • 相关阅读:
    栅格系统
    JQuery
    week 4
    week 1
    js嵌套,BOM,DOM,内置对象,数组,自定义对象,正则表达式
    week 2
    case when的两种用法
    获取当前路径
    parse,tryparse区别
    parse ,tryparse 续
  • 原文地址:https://www.cnblogs.com/fangfangs/p/6265570.html
Copyright © 2011-2022 走看看