如何在python中不使用硒的情况下使用ChromeDriver,IEDriver,GeckoDriver?

时间:2019-04-16 11:45:09

标签: python-3.x automation webdriver selenium-chromedriver

我正在寻找一种将Web驱动程序(ChromeDriver,IEDriver,GeckoDriver等,一起使用)与我的本地python应用程序结合使用的方法,以便该应用程序可以找出浏览器,并相应地选择驱动程序,并会做一些动作(例如单击元素或获取数据)。我想在python中完成任务而不使用硒

1 个答案:

答案 0 :(得分:0)

理论上可以在不使用Selenium的情况下使用驱动程序可执行文件。所有WebDriver实现都使用相同的机制运行。该机制将启动在本地运行的HTTP服务器,并在一组知名的端点(URL)上侦听包含定义良好的JSON主体的HTTP请求。

甚至有可能甚至启动IEDriverServer.exegeckodriverchromedriver之类的WebDriver实施,甚至使用cURL之类的工具来自动执行浏览器,因此可以使用Python HTTP客户端库和JSON解析器肯定在可能的范围内。但是,这样做需要对与驱动程序进行通信所使用的协议有相当透彻的理解,并且获得这种理解显然是不平凡的。实际上,使用该协议而不需要知道它的细节是Selenium存在的原因之一。

虽然您想说的是可能,但我绝不称其为 recommended 。尝试走这条路似乎需要付出很大的努力才能获得非常微不足道的好处,当您考虑需要担心生成的可执行进程的生命周期,HTTP请求正文的正确格式以及处理来自以下对象的所有潜在响应时,远端。您将重新发明Selenium已经为您做的很多事情。您的问题并未表明您不想使用Selenium的任何理由,因此很难就您认为令人反感的事情提供替代或缓解措施的进一步指导。 >