我想我的蜘蛛爬虫的start_urls网站完全之前跟踪更深入的网站。
爬虫的目标是找到过期的域。
举个例子,我创建了一个包含500个url (450个过期和50个actif网站)的页面,爬虫必须在后面的每个url中插入一个url。
实际上,爬虫跟随第一个网站活着,停止爬行start_urls网站。
这是我的配置:
self.custom_settings = {
'RETRY_ENABLED': False,
'DEPTH_LIMIT' : 0,
'DEPTH_PRIORITY' : 1,
'CONCURRENT_REQUESTS_PER_DOMAIN' : 64,
'CONCURRENT_REQUESTS' : 128,
'REACTOR_THREADPOOL_MAXSIZE' : 30,
}设置:
SCHEDULER_DISK_QUEUE = 'scrapy.squeues.PickleFifoDiskQueue'
SCHEDULER_MEMORY_QUEUE = 'scrapy.squeues.FifoMemoryQueue'
LOG_LEVEL = 'INFO'
DUPEFILTER_CLASS = 'dirbot.custom_filters.BLOOMDupeFilter'Crawler :
rules = (
Rule(LxmlLinkExtractor(allow=('.com', '.fr', '.net', '.org', '.info', '.casino', '.co'),
deny=('facebook', 'amazon', 'wordpress', 'blogspot', 'free')),
callback='parse_obj',
process_request='add_errback',
follow=True),
)
def add_errback(self, request):
return request.replace(errback=self.errback_httpbin)
def errback_httpbin(self, failure):
if failure.check(DNSLookupError):
request = failure.request
ext = tldextract.extract(request.url)
domain = ext.registered_domain
if domain != '' :
self.checkDomain(domain)发布于 2016-03-17 15:19:40
需要将custom_settings定义为类属性,以替换settings.py上的实际设置。
https://stackoverflow.com/questions/36064103
复制相似问题