Python Selenium 远程WebDriver Safari驱动

4 投票
1 回答
3593 浏览
提问于 2025-04-17 05:19

我有一段用于Safari的Java代码,使用的是RemoteWebDriver(我需要这个,因为我在不同的系统和多个浏览器上进行测试,比如Safari、Firefox、IE、Chrome等,都是用Selenium 2来做的):

Selenium sel = new DefaultSelenium(host, 4444, "*safari", baseURL);
CommandExecutor executor = new SeleneseCommandExecutor(sel);
DesiredCapabilities dc = new DesiredCapabilities();
WebDriver browser = new RemoteWebDriver(executor, dc);

我知道在Python中,第一行和最后一行应该是:

self.selenium = selenium(host, 4444, "*safariproxy", baseURL)
...
self.driver = webdriver.Remote(desired_capabilities = dc, command_executor = executor)

但我还是无法把中间的Java代码改写成Python。有没有人能帮我一下?

也许还有其他方法可以在Python中创建与Safari的webdriver远程连接?我需要的是webdriver,而不是Selenium 1。

提前谢谢大家。

1 个回答

3

一旦你正确安装了Safari驱动程序(可以参考这个链接:http://code.google.com/p/selenium/wiki/SafariDriver),你就应该能够按照以下步骤来让它正常工作(我在2.24.1版本上成功运行过):

dc = {‘browserName’: ‘safari’}
self.driver = webdriver.Remote(command_executor='http://127.0.0.1:4444/wd/hub', desired_capabilities=dc)

撰写回答