Python 如何使用py2exe将我的scrapy spider构建为exe文件?

Python 如何使用py2exe将我的scrapy spider构建为exe文件?,python,exe,scrapy,py2exe,Python,Exe,Scrapy,Py2exe,我使用scrapy创建一个项目,并在“spider”文件夹中添加我自己的spider,比如“spider_us.py”,我希望构建一个exe文件,该文件可以在其他计算机上执行,而无需安装scrapy 当我按照py2exe的说明操作时,我在同一文件夹中创建了一个新文件“Setup.py”,其中包含以下内容: from distutils.core import setup import py2exe setup(console = ["spider_us.py"]) 但是,它不起作用,因为当我

我使用scrapy创建一个项目,并在“spider”文件夹中添加我自己的spider,比如“spider_us.py”,我希望构建一个exe文件,该文件可以在其他计算机上执行,而无需安装scrapy

当我按照py2exe的说明操作时,我在同一文件夹中创建了一个新文件“Setup.py”,其中包含以下内容:

from distutils.core import setup
import py2exe

setup(console = ["spider_us.py"])
但是,它不起作用,因为当我运行spider时,我使用命令“scrapy craw spider_us”,而不是直接运行“spider”文件夹中的文件“spider_us.py”

如何将整个spider程序(当我使用“scrapy startproject XXX”时由scrapy自动创建)构建为exe文件,而不仅仅是“spiders”子文件夹中的spider文件(“spider_us.py”)


任何人提供建议或帮助,欢迎发表任何意见。非常感谢。

尝试通过Python脚本运行爬行器(而不是命令
scrapy crawl
)。您需要编写一些代码,例如:

from twisted.internet import reactor
from scrapy.crawler import Crawler
from scrapy import log, signals
from testspiders.spiders.followall import FollowAllSpider
from scrapy.utils.project import get_project_settings

spider = FollowAllSpider(domain='scrapinghub.com')
settings = get_project_settings()
crawler = Crawler(settings)
crawler.signals.connect(reactor.stop, signal=signals.spider_closed)
crawler.configure()
crawler.crawl(spider)
crawler.start()
log.start()
reactor.run() # the script will block here until the spider_closed signal was sent
有关详细信息,请参阅