第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

為什么我的spider_idle / on-demand / URL-feeding 像逐漸關(guān)閉?

為什么我的spider_idle / on-demand / URL-feeding 像逐漸關(guān)閉?

慕碼人8056858 2021-10-26 15:45:42
我spider_idle設(shè)置了一個(gè)信號(hào)來向蜘蛛提供另一批網(wǎng)址。但是,這在開始時(shí)似乎工作正常,但隨后Crawled (200)...消息出現(xiàn)的次數(shù)越來越少,最終停止出現(xiàn)。我有 115 個(gè)測(cè)試 URL 可以分發(fā),正如 Scrapy 所說的Crawled 38 pages...那樣。下面是蜘蛛和scrapy日志的代碼。一般來說,我正在實(shí)現(xiàn)兩階段爬行,第一遍僅將 url 下載到urls.jl文件,第二遍是對(duì)這些 URL 執(zhí)行抓取。我現(xiàn)在正在接近第二個(gè)蜘蛛的編碼。import jsonimport scrapyimport loggingfrom scrapy import signalsfrom scrapy.http.request import Requestfrom scrapy.exceptions import DontCloseSpiderclass A2ndexample_comSpider(scrapy.Spider):    name = '2nd_example_com'    allowed_domains = ['www.example.com']    def parse(self, response):        pass    @classmethod    def from_crawler(cls, crawler, *args, **kwargs):        spider = cls(crawler, *args, **kwargs)        crawler.signals.connect(spider.idle_consume, signals.spider_idle)        return spider    def __init__(self, crawler):        self.crawler = crawler        # read from file        self.urls = []        with open('urls.jl', 'r') as f:            for line in f:                self.urls.append(json.loads(line))        # How many urls to return from start_requests()        self.batch_size = 5    def start_requests(self):        for i in range(self.batch_size):            if 0 == len(self.urls):                return            url = self.urls.pop(0)            yield Request(url["URL"])    def idle_consume(self):        # Everytime spider is about to close check our urls         # buffer if we have something left to crawl        reqs = self.start_requests()        if not reqs:            return        logging.info('Consuming batch... [left: %d])' % len(self.urls))        for req in reqs:            self.crawler.engine.schedule(req, self)        raise DontCloseSpider我預(yù)計(jì)蜘蛛會(huì)抓取所有 115 個(gè) URL,而不僅僅是 38 個(gè)。此外,如果它不想再抓取,并且 singal-handler 函數(shù)沒有引發(fā)DontCloseSpider,那么它至少不應(yīng)該關(guān)閉然后?
查看完整描述

1 回答

  • 1 回答
  • 0 關(guān)注
  • 153 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)