为什么我的scrapy没有在start_urls列表中使用所有url?

时间:2014-12-05 17:23:35

标签: python-2.7 scrapy scrapy-spider scrapy-shell

我的start_urls列表中有近300个url,但scrapy只有大约200个网址。但并非所有这些列出的网址。我不知道为什么?我该如何处理。我必须从网站上抓取更多项目。

另一个我不明白的问题是:当scrapy完成时我怎么能看到日志错误?从终端或我必须编写代码来查看日志错误。我认为默认情况下启用了日志。

感谢您的回答。


更新:

输出如下。我不知道为什么只有2829项被刮掉。实际上,我的start_urls中有600个网址。

但是当我在start_urls中只提供400个网址时,它可以抓取6000个项目。我希望能够抓住www.yhd.com的整个网站。任何人都可以提出更多建议吗?

2014-12-08 12:11:03-0600 [yhd2] INFO: Closing spider (finished)
2014-12-08 12:11:03-0600 [yhd2] INFO: Stored csv feed (2829 items) in myinfoDec.csv        
2014-12-08 12:11:03-0600 [yhd2] INFO: Dumping Scrapy stats:
{'downloader/exception_count': 1,
'downloader/exception_type_count/twisted.web._newclient.ResponseNeverReceived': 1,
'downloader/request_bytes': 142586,
'downloader/request_count': 476,
'downloader/request_method_count/GET': 476,
'downloader/response_bytes': 2043856,
'downloader/response_count': 475,
'downloader/response_status_count/200': 474,
'downloader/response_status_count/504': 1,
'finish_reason': 'finished',
'finish_time': datetime.datetime(2014, 12, 8, 18, 11, 3, 607101),
'item_scraped_count': 2829,
'log_count/DEBUG': 3371,
'log_count/ERROR': 1,
'log_count/INFO': 14,
'response_received_count': 474,
'scheduler/dequeued': 476,
'scheduler/dequeued/memory': 476,
'scheduler/enqueued': 476,
'scheduler/enqueued/memory': 476,
'start_time': datetime.datetime(2014, 12, 8, 18, 4, 19, 698727)}
2014-12-08 12:11:03-0600 [yhd2] INFO: Spider closed (finished)

1 个答案:

答案 0 :(得分:1)

最后我解决了这个问题......

首先,它不会抓取start_urls中列出的所有网址,因为我在start_urls中的网址中输入了拼写错误。其中一个" http://..."错误地写成" ttp://..." ;,第一个' h'不见了。然后似乎蜘蛛停下来看着它后面列出的其他网址。 Horrifed。

其次,我点击Pycharm的配置面板解决了日志文件问题,它提供了显示日志文件面板。顺便说一下,我的scrapy框架被放入Pycharm IDE中。这对我很有效。不是广告。

感谢所有意见和建议。