使用ChromeDriver运行计划任务

时间:2017-08-29 09:22:52

标签: python selenium schedule google-chrome-headless

我制作了一个基于Selenium和Chromedriver的脚本。基本上是一个登录网站的程序。写一条评论(来自计算机的txt文件),然后关闭程序,不是它不是垃圾邮件脚本,而是我刚开始使用python和selenium创建的脚本。

如果我手动启动它,程序本身效果很好。然后没有问题,而且chromedriver是无头的,因为我不需要看到整个过程chrome_options.add_argument("--headless")

然后我在这里看了一篇帖子Scheduling a Python Script

我跟着它The setup

但我遇到的问题是每次都是时间和程序开始。它出现了脚本,然后是我设法打印的快速错误

The Error

我可以看到Chromedriver存在问题。事情就是这样。如何在后台运行Chromedriver的情况下使此脚本完成计划任务。我可能设置错误,但程序手动工作,所以我猜Windows计划任务可能有问题?

基本上我只希望脚本每隔xx:xx时间在后台运行一次。

如果需要更多信息,请随时发表评论。

    chrome_options = Options()
chrome_options.add_argument("--disable-extensions")
chrome_options.add_argument('--disable-notifications')
chrome_options.add_argument("--headless")
chrome_options.add_argument("--user-agent=Mozilla/5.0 (Linux; Android 6.0; HTC One M9 Build/MRA58K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.98 Mobile Safari/537.36")
driver = webdriver.Chrome(chrome_options=chrome_options)
driver.implicitly_wait(5)

3 个答案:

答案 0 :(得分:2)

您使用的驱动程序太旧且无法识别ChromeHeadless,您需要使用2.29或更高版本:

Selenium ChromeDriver does not recognize newly compiled Headless Chromium (Python)

答案 1 :(得分:0)

我遇到了同样的问题(具有更新的“无头”版本),解决方案是将Windows计划任务作为“管理员”(带有“ s”)运行。

答案 2 :(得分:0)

我遇到了这个问题,几乎放弃了任务计划程序,开始编写Windows服务,该服务将运行我的Web抓取应用程序。如果您遇到无法访问的chrome异常或chrome无法从HTTP服务器获得响应的情况...

这使我的应用程序甚至可以通过任务计划程序运行。

任务计划程序->继续执行任务->属性->条件>在网络下->仅在以下网络连接可用时检查网络启动->选择“任何连接”。

从这篇帖子windows-10-task-scheduler-not-running

进行操作