51Testing软件测试论坛

标题: selenium webdriver启动Chrome浏览器后无法输入网址的解决办法 [打印本页]

作者: 听海——sky    时间: 2018-6-14 16:06
标题: selenium webdriver启动Chrome浏览器后无法输入网址的解决办法
通过selenium webdriver启动Chrome浏览器,脚本如下:

from seleniumimport 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] 远程主机强迫关闭
了一个现有的连接。

浏览器显示如下:
[attach]116486[/attach]

selenium版本:3.0.1

python版本3.5

Chrome版本:54.0.2840.99 m

修改以下部分脚本

option= webdriver.ChromeOptions()

option.add_argument('--user-data-dir=C:\\Users\FF\AppData\Local\Google\Chrome\\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":t
rue},"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.st
orage.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:\Users\Administrator\AppData\Local\Google\Chrome\User Dat
a') #设置成用户自己的数据目录

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:\crx\AdBlock_v2.17.crx') #自己下载的crx路径

driver = webdriver.Chrome(chrome_options=option)

driver.get('http://www.taobao.com/')








欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2