Hallo habe eine grundlegende Spinne, die ausgeführt wird, um alle Links auf einer bestimmten Domäne zu holen. Ich möchte sicherstellen, dass es seinen Zustand behält, so dass es von dort weitergehen kann, wo es geblieben ist. Ich habe die gegebene URL http://doc.scrapy.org/en/latest/topics/jobs.html. Aber wenn ich es das erste Mal versuche, läuft es gut und ich beende es mit Ctrl + C und wenn ich versuche, es fortzusetzen, stoppt der Crawl auf der ersten URL selbst.Scrapy Spider nicht speichern Zustand (persistent state)
unten ist das Protokoll, wenn es endet:
2016-08-29 16:51:08 [scrapy] INFO: Dumping Scrapy stats:
{'downloader/request_bytes': 896,
'downloader/request_count': 4,
'downloader/request_method_count/GET': 4,
'downloader/response_bytes': 35320,
'downloader/response_count': 4,
'downloader/response_status_count/200': 4,
'dupefilter/filtered': 149,
'finish_reason': 'finished',
'finish_time': datetime.datetime(2016, 8, 29, 16, 51, 8, 837853),
'log_count/DEBUG': 28,
'log_count/INFO': 7,
'offsite/domains': 22,
'offsite/filtered': 23,
'request_depth_max': 1,
'response_received_count': 4,
'scheduler/dequeued': 2,
'scheduler/dequeued/disk': 2,
'scheduler/enqueued': 2,
'scheduler/enqueued/disk': 2,
'start_time': datetime.datetime(2016, 8, 29, 16, 51, 7, 821974)}
2016-08-29 16:51:08 [scrapy] INFO: Spider closed (finished)
Hier ist meine Spinne:
from scrapy.spiders import CrawlSpider, Rule
from scrapy.linkextractors import LinkExtractor
from Something.items import SomethingItem
class maxSpider(CrawlSpider):
name = 'something'
allowed_domains = ['thecheckeredflag.com', 'inautonews.com']
start_urls = ['http://www.thecheckeredflag.com/', 'http://www.inautonews.com/']
rules = (Rule(LinkExtractor(allow=()), callback='parse_obj', follow=True),)
def parse_obj(self,response):
for link in LinkExtractor(allow=self.allowed_domains,deny =()).extract_links(response):
item = SomethingItem()
item['url'] = link.url
yield item
#print item
Scrapy Version: 1.1.2 Scrapy
Python-Version: 2.7
Ich bin neu zu scrapy, wenn ich mehr Informationen posten muss, lass es mich wissen.
Wie sieht Ihr Terminal/CMD-Anruf aus? Verwendet es die Syntax, wie sie es vorschlägt: 'scrapy crawl somespider -s JOBDIR = crawls/somespider-1'? – dblclik
Ja, genau das gleiche. Es läuft auch das erste Mal richtig, aber wenn ich die oben genannten sind die Statistiken für den Lebenslauf –
Können Sie das Protokoll für einfügen, wenn Ihr Schaber beginnt zu laufen? Wo die Konfiguration passiert. –