无法为Python运行scrapy

时间:2013-05-20 13:04:22

标签: python web-scraping scrapy

我是这个平台以及Python抓取的新手。我希望我的问题仍然可以理解,有人可以帮助我。对不起,万一我搞不清楚......

我已经检查了类似主题的其他帖子,但无法克服我的问题。 我目前正在进行网络抓取,并想尝试Scrapy。因此,我按照网站上的安装说明进行操作。 http://doc.scrapy.org/en/0.16/intro/install.html#intro-install 在我弄清楚它是如何工作之后我决定在虚拟环境中运行。

我安装了virtualenv和pip。 然后我安装了Scrapy。

当我现在想要开始教程

scrapy startproject tutorial

我收到以下错误消息:

    File "/Users/XXX/environment_trial/bin/scrapy", line 3, in <module>
    from scrapy.cmdline import execute
  File "/Users/XXX/environment_trial/lib/python2.7/site-packages/scrapy/cmdline.py", line 7, in <module>
    from scrapy.crawler import CrawlerProcess
  File "/Users/XXX/environment_trial/lib/python2.7/site-packages/scrapy/crawler.py", line 3, in <module>
    from twisted.internet import reactor, defer
ImportError: No module named twisted.internet
(environment_trial)XXX-iMac:~ XXX$ 

我在Mac上找不到Twisted.py,正如其他帖子所建议的那样。

有人可以告诉我该怎么办?

2 个答案:

答案 0 :(得分:1)

简单地说,你需要安装twis​​ted。你可以从the download page获得它。看起来您需要在较新的Mac上从源代码安装,但这只是提取tarball并在解压缩的文件夹中运行python setup.py install的情况。

编辑:既然你已经安装了pip,你也可以用它来抓它。

pip -E twisted_env install -U twisted

答案 1 :(得分:0)

请确保您安装的所有二进制文件对应于您安装的完全相同的python版本(例如python 2.7)。

我在为python3.6安装pyopenSSL时犯了这个错误,我花了很长时间才意识到版本不匹配。