Scrapy 在基本示例中崩溃(不会 运行)
Scrapy crashes (wont run) on basic example
我在 Windows 7 x64 上使用 Python 2.7 (Anaconda)。我通过 pip 安装了 Scrapy。安装的版本是1.0.1。我正在尝试 运行 tutorial 中的基本示例,即:
import scrapy
class WhosebugSpider(scrapy.Spider):
name = 'Whosebug'
start_urls = ['http://whosebug.com/questions?sort=votes']
def parse(self, response):
for href in response.css('.question-summary h3 a::attr(href)'):
full_url = response.urljoin(href.extract())
yield scrapy.Request(full_url, callback=self.parse_question)
def parse_question(self, response):
yield {
'title': response.css('h1 a::text').extract()[0],
'votes': response.css('.question .vote-count-post::text').extract()[0],
'body': response.css('.question .post-text').extract()[0],
'tags': response.css('.question .post-tag::text').extract(),
'link': response.url,
}
然后在命令行:
scrapy runspider Whosebug_spider.py -o top-Whosebug-questions.json
但是 Python 在执行任何操作之前崩溃。 Windows 报告:
python.exe has stopped working
我得到的命令提示符中的唯一输出是:
C:\Anaconda\lib\site-packages\scrapy\commands\deploy.py:16: ScrapyDeprecationWarning: Module `scrapy.command` is deprecated, use`scrapy.commands` instead
from scrapy.command import ScrapyCommand
2015-07-17 16:39:28 [scrapy] INFO: Scrapy 1.0.1 started (bot: scrapybot)
2015-07-17 16:39:28 [scrapy] INFO: Optional features available: ssl, http11, boto
2015-07-17 16:39:28 [scrapy] INFO: Overridden settings: {'FEED_FORMAT': 'json','FEED_URI': 'top-Whosebug-questions.json'}
有谁知道如何让 Scrapy 工作?我是不是安装错了?
根据@Amol 的回答,我使用 pip 卸载了 Scrapy,然后从 Python/Anconda 包目录中删除了所有文件夹。然后使用pip重新安装。同样的问题仍然存在,但崩溃前输出的第一行已经消失。现在的输出是:
2015-07-17 16:39:28 [scrapy] INFO: Scrapy 1.0.1 started (bot: scrapybot)
2015-07-17 16:39:28 [scrapy] INFO: Optional features available: ssl, http11, boto
2015-07-17 16:39:28 [scrapy] INFO: Overridden settings: {'FEED_FORMAT': 'json','FEED_URI': 'top-Whosebug-questions.json'}
scrapy\commands\deploy.py 版本 1.0.1 不应存在文件。该文件可能有一些代码依赖于某些导致 python.exe 崩溃的已弃用/移动代码。
快速查看我机器上虚拟环境中的文件告诉我:
对于 scrapy 0.24.4:此文件存在
对于 scrapy 1.0.1:此文件已被删除
此文件存在于您的 scrapy 1.0.1 安装中表明安装可能没有正确进行。也就是说,以前版本的文件仍然存在。
您可能想要删除 scrapy,删除 scrapy 目录并重新安装。
我想不通。所以未绝缘 Python 并重新安装它,现在 scrapy 工作了。虽然不理想
我在 Windows 7 x64 上使用 Python 2.7 (Anaconda)。我通过 pip 安装了 Scrapy。安装的版本是1.0.1。我正在尝试 运行 tutorial 中的基本示例,即:
import scrapy
class WhosebugSpider(scrapy.Spider):
name = 'Whosebug'
start_urls = ['http://whosebug.com/questions?sort=votes']
def parse(self, response):
for href in response.css('.question-summary h3 a::attr(href)'):
full_url = response.urljoin(href.extract())
yield scrapy.Request(full_url, callback=self.parse_question)
def parse_question(self, response):
yield {
'title': response.css('h1 a::text').extract()[0],
'votes': response.css('.question .vote-count-post::text').extract()[0],
'body': response.css('.question .post-text').extract()[0],
'tags': response.css('.question .post-tag::text').extract(),
'link': response.url,
}
然后在命令行:
scrapy runspider Whosebug_spider.py -o top-Whosebug-questions.json
但是 Python 在执行任何操作之前崩溃。 Windows 报告:
python.exe has stopped working
我得到的命令提示符中的唯一输出是:
C:\Anaconda\lib\site-packages\scrapy\commands\deploy.py:16: ScrapyDeprecationWarning: Module `scrapy.command` is deprecated, use`scrapy.commands` instead
from scrapy.command import ScrapyCommand
2015-07-17 16:39:28 [scrapy] INFO: Scrapy 1.0.1 started (bot: scrapybot)
2015-07-17 16:39:28 [scrapy] INFO: Optional features available: ssl, http11, boto
2015-07-17 16:39:28 [scrapy] INFO: Overridden settings: {'FEED_FORMAT': 'json','FEED_URI': 'top-Whosebug-questions.json'}
有谁知道如何让 Scrapy 工作?我是不是安装错了?
根据@Amol 的回答,我使用 pip 卸载了 Scrapy,然后从 Python/Anconda 包目录中删除了所有文件夹。然后使用pip重新安装。同样的问题仍然存在,但崩溃前输出的第一行已经消失。现在的输出是:
2015-07-17 16:39:28 [scrapy] INFO: Scrapy 1.0.1 started (bot: scrapybot)
2015-07-17 16:39:28 [scrapy] INFO: Optional features available: ssl, http11, boto
2015-07-17 16:39:28 [scrapy] INFO: Overridden settings: {'FEED_FORMAT': 'json','FEED_URI': 'top-Whosebug-questions.json'}
scrapy\commands\deploy.py 版本 1.0.1 不应存在文件。该文件可能有一些代码依赖于某些导致 python.exe 崩溃的已弃用/移动代码。
快速查看我机器上虚拟环境中的文件告诉我:
对于 scrapy 0.24.4:此文件存在
对于 scrapy 1.0.1:此文件已被删除
此文件存在于您的 scrapy 1.0.1 安装中表明安装可能没有正确进行。也就是说,以前版本的文件仍然存在。
您可能想要删除 scrapy,删除 scrapy 目录并重新安装。
我想不通。所以未绝缘 Python 并重新安装它,现在 scrapy 工作了。虽然不理想