[英]Scrapy crawling data from a forum
我是Scrapy的新手。 我想從論壇中檢索所有帖子,並為這些新帖子獲取最新信息。 我想找出一些問題。
1.如何確保抓取工具不會兩次抓取帖子?
2.如果有某種機制可以避免兩次抓取帖子。 即使我重新啟動搜尋器,此機制也會起作用嗎?
3.爬蟲會繼續自動爬行新帖子嗎?
4.我需要在這個項目中使用什么數據庫/插件?
這是蜘蛛類的初始化
name = "forum"
allowed_domains = ["forum.com"]
start_urls = (
'http://s7.forum.com/posts.aspx',
)
rules = [
Rule(LinkExtractor(allow=('mid=', )), callback='parse_item'),
]
從scrapy.dupefilter導入RFPDupeFilter
類SeenURLFilter(RFPDupeFilter):
def __init__(self, path=None):
self.urls_seen = set()
RFPDupeFilter.__init__(self, path)
def request_seen(self, request):
if request.url in self.urls_seen:
return True
else:
self.urls_seen.add(request.url)
確保將DUPEFILTER_CLASS常量添加到settings.py:
DUPEFILTER_CLASS = 'scraper.custom_filters.SeenURLFilter'
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.