我们有一个Ubuntu服务器,用于运行Chrome和Firefox的Selenium测试(我安装了ChromeDriver),我也想在Windows 10计算机上本地运行测试。我想保持两个计算机的Python代码相同。但我没有找到如何在Windows 10上安装ChromeDriver?我没有在文档 [1,2]上找到它。
以下是在Chrome中运行测试的代码:
import unittest
from selenium import webdriver
class BaseSeleniumTestCase(unittest.TestCase):
...
...
...
...
def start_selenium_webdriver(self, chrome_options=None):
...
self.driver = webdriver.Chrome(chrome_options=chrome_options)
...
我还发现How to run Selenium WebDriver test cases in Chrome?但它似乎不是在Python中(没有标记编程语言,它是什么?)
更新#1:我在https://sites.google.com/a/chromium.org/chromedriver/getting-started中找到了一些Python代码,但是如果我想为两台计算机保留相同的Python代码,我在哪里将文件放在Windows 10中?< / p>
更新#2:我已将chromedriver.exe
下载并放入C:\Windows
并且可以正常运行,但我没有在任何地方看到它。
答案 0 :(得分:13)
正如Uri在问题中所述,在更新#2 下,下载最新版本的chromedriver并将其放入C:\ Windows更正了问题。
当浏览器窗口打开时,我遇到了与Chrome挂起相同的问题(与命令提示符窗口一起)。
最新的驱动程序可在以下网址找到:
https://sites.google.com/a/chromium.org/chromedriver/downloads
chromedriver_win32.zip文件中的版本正在使用我的64位系统。
答案 1 :(得分:4)
首先让我简要介绍一下这些要求。 您需要从此处下载chrome web driver zip。 https://chromedriver.storage.googleapis.com/index.html?path=2.33/
提取文件并将其存储在所需位置。
在Eclipse中创建一个新项目,并在您的类中包含以下代码。
System.setProperty("webdriver.chrome.driver", "C:\\temp\\chromedriver.exe");
WebDriver driver = new ChromeDriver();
说明:System.setProperty(key,value)
:
Key是默认值,对于所有系统都是相同的,value是chromedriver提取文件的位置。
答案 2 :(得分:1)
chromedriver.exe
并将其保存到所需位置executable_path
到其保存的路径示例代码如下:
from selenium import webdriver
options = webdriver.ChromeOptions()
options.add_argument('headless')
driver = webdriver.Chrome(executable_path="path/to/chromedriver.exe", chrome_options=options)
driver.get("example.html")
# do something here...
driver.close()
正如Uri在问题的更新#2中所述,如果将chromedriver.exe
放在C:/Windows
下,则无需指定executable_path
,因为Python会在{{1 }}。