执行selenium脚本的替代方案

执行selenium脚本的替代方案,selenium,selenium-webdriver,webdriver,ghostdriver,Selenium,Selenium Webdriver,Webdriver,Ghostdriver,我有一个带有python3的selenium脚本。我需要每天早上7点运行它5分钟,但我不能为了它而让我的笔记本电脑24/7开着。最简单/最好的选择是什么 我检查了Lambda AWS,但我无法在那里安装chrome(或它的无头版本),而且我没有服务器方面的经验。要使用Python 3执行Selenium脚本而不安装浏览器,可以使用GhostDriver 是使用PhantomJS作为后端的远程WebDriver协议的实现。GhostDriver被设计成PhantomJS本身与JavaScript

我有一个带有
python3
selenium
脚本。我需要每天早上7点运行它5分钟,但我不能为了它而让我的笔记本电脑24/7开着。最简单/最好的选择是什么

我检查了Lambda AWS,但我无法在那里安装chrome(或它的无头版本),而且我没有服务器方面的经验。

要使用Python 3执行Selenium脚本而不安装浏览器,可以使用GhostDriver

是使用PhantomJS作为后端的远程WebDriver协议的实现。GhostDriver被设计成PhantomJS本身与JavaScript API不可分割的一部分

  • phantomjs.page.settings.SETTING=VALUE
  • phantomjs.page.customHeaders.HEADER=VALUE
  • phantomjs.page.whitelist
  • phantomjs.page.blacklist
  • 未处理的提示行为
  • loggingPrefs
  • phantomjs.binary.path
  • phantomjs.ghostdriver.path
  • phantomjs.cli.args
  • phantomjs.ghostdriver.cli.args
GhostDriver的主要优点
  • 截屏
  • 页面自动化
  • 网络监控
  • 在命令行上运行单元测试
  • 与测试套件的QUnit相结合
一个例子
  • 代码块:

    from selenium import webdriver
    
    driver = webdriver.PhantomJS(executable_path='/path/to/phantomjs')
    driver.get('https://www.google.com/')
    print(driver.title)
    driver.quit()
    
  • 控制台输出:

    Google
    
要在不安装浏览器的情况下使用Python 3执行Selenium脚本,可以使用GhostDriver

是使用PhantomJS作为后端的远程WebDriver协议的实现。GhostDriver被设计成PhantomJS本身与JavaScript API不可分割的一部分

  • phantomjs.page.settings.SETTING=VALUE
  • phantomjs.page.customHeaders.HEADER=VALUE
  • phantomjs.page.whitelist
  • phantomjs.page.blacklist
  • 未处理的提示行为
  • loggingPrefs
  • phantomjs.binary.path
  • phantomjs.ghostdriver.path
  • phantomjs.cli.args
  • phantomjs.ghostdriver.cli.args
GhostDriver的主要优点
  • 截屏
  • 页面自动化
  • 网络监控
  • 在命令行上运行单元测试
  • 与测试套件的QUnit相结合
一个例子
  • 代码块:

    from selenium import webdriver
    
    driver = webdriver.PhantomJS(executable_path='/path/to/phantomjs')
    driver.get('https://www.google.com/')
    print(driver.title)
    driver.quit()
    
  • 控制台输出:

    Google
    

AWS Lambda是实现您的目标的可行解决方案-尤其是如果脚本将有一个小的运行时。他们最近将最大执行时间增加到15分钟,所以您应该可以

在Lambda中使用headless Chrome(在Python中;它充满了JS/node.JS解决方案:)是可行的-我自己在过去成功地使用了这个项目-


您可以使用AWS Lambda来计划在您想要的时间执行。AWS Lambda对于您的目标来说是一个可行的解决方案-特别是如果脚本将有一个小的运行时。他们最近将最大执行时间增加到15分钟,所以您应该可以

在Lambda中使用headless Chrome(在Python中;它充满了JS/node.JS解决方案:)是可行的-我自己在过去成功地使用了这个项目-


若要在所需时间安排执行,您可以使用。

是否能够设置EC2实例?您的脚本是否与phantomjs等无头浏览器兼容?您是否能够配置EC2实例?您的脚本是否与phantomjs等无头浏览器兼容?那么,GhostDriver商业版如何回答“如何以及在何处安排每日重复脚本执行”的问题;问AWS lambda你指示他设置一个适用于Windows的驱动程序可执行文件?那么,GhostDriver商业版如何回答“如何以及在何处安排每日重复脚本执行”的问题;问AWS lambda你指示他设置一个适用于Windows的驱动程序可执行文件吗?在我的脚本中,我使用了诸如
find\u element\u by\u xpath
click
之类的函数。无头铬合金能够与这些硒功能一起工作?是的,绝对可以;selenium库中的几乎所有内容都可用于无头浏览器。在我的脚本中,我使用了类似于
find\u element\u by\u xpath
click
的函数。无头铬合金能够与这些硒功能一起工作?是的,绝对可以;selenium库中的几乎所有内容都可用于无头浏览器。