我是否可以使用实际Chrome安装中的Cookie运行Selenium ChromeDriver?

时间:2015-12-09 12:57:46

标签: google-chrome selenium cookies intellij-idea

所以我在Ubuntu机器上使用IntelliJ IDEA + chromedriver运行硒测试......

在我的谷歌浏览器安装中,我已经登录了一个帐户,比如谷歌。当我在selenium测试中访问http://accounts.google.com时,我会进入登录页面而不是实际的帐户管理页面。

我很确定我并不完全了解Selenium和Chrome驱动程序运行的确切方式,但我确实记得将“Google Chrome安装在默认位置”是运行Selenium的要求之一用镀铬驱动程序测试。

我可以在已安装的浏览器的上下文中运行,即可以访问我的浏览器历史记录和Cookie吗?

2 个答案:

答案 0 :(得分:7)

每次Selenium打开浏览器(Chrome / Firefox / IE)时,它会打开该浏览器的规范形式。作为测试人员,您可以使用DesiredCapabilities对象设置浏览器首选项,对于chrome,您还可以使用ChromeOptions对象来传递chrome命令行参数。

选择个人资料

img[src="image_path"]{position:relative;left:2px;}

有关Chrome驱动程序功能的更多信息: https://sites.google.com/a/chromium.org/chromedriver/capabilities

有关chrome的user-data-dir命令行选项的更多信息:
https://www.chromium.org/user-experience/user-data-directory

答案 1 :(得分:4)

试试这个:

from selenium import webdriver

options = webdriver.ChromeOptions() 
options.add_argument("user-data-dir=C:\\Path") #Path to your chrome profile
w = webdriver.Chrome(executable_path="C:\\Users\\chromedriver.exe", chrome_options=options)

要查找Chrome配置文件数据的路径,您需要在地址栏中键入chrome:// version /。对于前者我的显示为C:\ Users \ pc \ AppData \ Local \ Google \ Chrome \ User Data \ Default,要在脚本中使用它我必须排除\ Default \所以我们最终只得到C:\ Users \ pc \ AppData \ Local \ Google \ Chrome \用户数据。

来源:How to load default profile in chrome using Python Selenium Webdriver?