OSX 使用 os.system 到 运行 Scrapy 脚本

OSX Using os.system to run Scrapy Script

这个问题已经结束了,但我不确定这个解决方案是否有效。

我有一个 scrapy 脚本,我想将其转换为 .app 文件。有一个名为 Platypus[] 的程序使用 GUI 将 python 项目转换为应用程序。最终我只想拥有一些我或其他人可以与之交互并让蜘蛛启动的东西 运行ning.

所以我在想

为 运行 蜘蛛制作一个脚本 -> 将其喂入鸭嘴兽 -> 创建一个人只需点击即可的程序

我通常通过终端 运行 的参数是

scrapy crawl [spiderName] -t csv -o - > "pathName" 

经过一些研究,我发现这可能是实现它的最简单方法

import os
os.system('scrapy crawl [spiderName] -t csv -o - > "pathName"')

我把这个程序和我的蜘蛛程序放在同一个目录中,但是当我 运行 它没有任何反应。 [蜘蛛不运行]

另一个问题: 我知道我必须将脚本调整为 运行 其他机器上目录的蜘蛛(这很好)但是我是否也必须在其他人的机器上安装 scrapy?

感谢您的帮助!

编辑: 尝试使用子进程时,Spider 不是 运行

的结果相同
subprocess.Popen('scrapy crawl [spiderName] -t csv -o - > "pathName"', shell = True)

编辑#2: 做子流程的方法是这样的:

process = subprocess.Popen(['scrapy', 'crawl', 'homeDepotSpider'] , shell=True)

然而,当我 运行 这个时,我不这样做它是 运行 在正确的目录中,即使 运行spider 程序与我的 spider 在同一目录中。

在终端输入 'ls' 后,我发现我在桌面目录中

想通了,错过了这个感觉很蠢。

我不在正确的目录中(不确定这是否仅适用于 OSX)

os.chdir(path name of folder)