【问题标题】:How can I programmatically execute command line commands at a different leveled directory at a certain time interval?如何以特定时间间隔以编程方式在不同级别的目录中执行命令行命令?
【发布时间】:2014-12-24 15:25:51
【问题描述】:

我在 Scrapy 中编写了一个网络爬虫,我使用 scrapy crawl scrape_site 调用它,并在 Twython 中编写了一个 Twitter 机器人,我使用 python twitter.py 调用它。我在一个名为 ScrapeSite 的目录中拥有所有正确的文件。当我在 ScrapeSite 目录中的命令行上执行这两个命令时,它们可以正常工作。

但是,我想将文件夹移动到服务器并让作业每十五分钟运行一次这两个命令。我已经考虑过执行一项 cron 作业,但 cronjobs 位于不同的父目录中,我只能在包含 Scrapy 文件(例如 ScrapeSite)的目录中调用 scrapy。我可以做一个 cron 作业来运行 ScrapeSite 目录中的一个文件,该文件又可以在适当的级别调用这两个命令吗?

如何以特定的时间间隔在不同级别的目录中以编程方式执行命令行命令?

【问题讨论】:

    标签: python command-line cron scrapy twython


    【解决方案1】:

    使用 cron 作业。这使您可以按时间间隔运行命令行命令。您可以将命令与 && 结合使用,因此可以使用普通 bash 命令 cd 更改目录。

    所以在这种情况下,您可以致电cd /directory/folder && scrapy crawl scrape_site && python twitter.py

    要每十五分钟运行一次,让 cron 作业像 */15 * * * * 一样运行

    所以完整的 cron 作业看起来像 */15 * * * * cd /directory/folder && scrapy crawl scrape_site && python twitter.py

    【讨论】:

      猜你喜欢
      • 2013-08-14
      • 1970-01-01
      • 2016-10-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-01-26
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多