scrapy 2.3 請求方法快捷方式

2021-05-31 16:59 更新

而不是執(zhí)行 ?start_requests()? 生成的方法 ?scrapy.Request? 來自URL的對象,您只需定義 ?start_urls? 具有URL列表的類屬性。然后,此列表將由 ?start_requests()? 要為您的蜘蛛創(chuàng)建初始請求,請執(zhí)行以下操作:

import scrapy


class QuotesSpider(scrapy.Spider):
    name = "quotes"
    start_urls = [
        'http://quotes.toscrape.com/page/1/',
        'http://quotes.toscrape.com/page/2/',
    ]

    def parse(self, response):
        page = response.url.split("/")[-2]
        filename = f'quotes-{page}.html'
        with open(filename, 'wb') as f:
            f.write(response.body)

這個 ?parse()? 方法將被調用來處理這些URL的每個請求,即使我們沒有明確地告訴Scrapy這樣做。這是因為 ?parse()? 是Scrapy的默認回調方法,對沒有顯式分配回調的請求調用該方法。

以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號