1

我有一个 Scrapy 项目,它在 Apache (XAMPP) 上运行基于 Web 的界面,允许用户创建、修改和调度蜘蛛,还包括在 6800 端口调用 scrapyd 以获取挂起/运行/完成的蜘蛛。除了一个例外,这一切都很好......如果scrapyd没有运行,我显然无法安排蜘蛛或从scrapyd获取待处理/正在运行/已完成的蜘蛛。

我目前有一个呼叫http://localhost:6800,如果失败,我会显示一条消息,说明服务器当前未运行,并且我有一个启动服务器的链接。单击该链接时,它会调用一个 Python 页面,该页面会调用 os.system 来启动服务器。我对 Python 还很陌生,并且仍在尝试掌握操作系统功能,并且我尝试了几种不同的方法,这些方法是我在 Stack Overflow 上找到的(例如 subprocess.call 和 os.popen/popen2/ popen3) 但它们似乎都不起作用。

我知道使用scrapy server你需要在scrapy项目目录中启动scrapyd所以我也尝试使用它来调用它twistd -ny extras/scrapyd.tac

对我来说,运行scrapy 命令或通过Python 调用twistd 的最佳方式是什么?

4

0 回答 0