scrapy處理需要跟進的url


在做scrapy爬蟲的時候經常會遇到需要跟進url的情況,網站a有許多url,但是我們需要跟進這些url,進一步獲取這些url中的詳細內容。

簡單的說就是要先解析出所有需要的url,然后跟進這些url

那么現在來說說怎么做

scrapy中有個Request專門處理跟進的url

from scrapy.http import Request

在處理函數parse中進行跟進

    def parse(self, response):
        hxs = Selector(response)
        urls = hxs.xpath('//div[@class="li-info"]//h3//a/@href').extract()
        for url in urls:
            yield Request(url, callback=self.get_community)

callback中的函數才是重點,對跟進的url再次發送請求,

    def get_community(self, response):
        hxs = Selector(response)
        item = CommunityItem()
        yield item

這個函數用來進行對跟進的url進行解析,以便得到我們想要的數據

這里只是跟進了一次url,如果需要跟進多次url,可以多次使用Request,多個回調函數處理。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM