在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問(wèn)答/Python/ scrapy 獲取到下一頁(yè)的鏈接了,怎么回調(diào)給獲取文章鏈接的函數(shù)呢?

scrapy 獲取到下一頁(yè)的鏈接了,怎么回調(diào)給獲取文章鏈接的函數(shù)呢?

    def FundIndex_parse(self, response):
        '''
        獲取 fund.123.com.cn 導(dǎo)航中的欄目鏈接
        @ColumnUrls 為導(dǎo)航中欄目的相對(duì)地址
        @ColumnUrl 為拼接后的欄目鏈接
        :param response:
        :return:
        '''
        ColumnUrls = response.css('.nav-bar.nav-main ul li a::attr(href)').extract() #欄目列表
        for ColumnUrl in ColumnUrls:
            ColumnUrl = 'http://fund.123.com.cn' + ColumnUrl #欄目鏈接
            yield Request(url = ColumnUrl,callback=self.FundList_parse)
        ColumnNextUrl = response.css('.stock-list.mt25 .list-content ul li a::attr(href)').extract() #獲取下一頁(yè)鏈接
        time.sleep(3)
        if ColumnNextUrl:
            print(ColumnNextUrl)
            yield Request(url=ColumnNextUrl,callback=self.FundList_parse)

    def FundList_parse(self,response):
        '''
        獲取 fund.123.com.cn 各欄目列表頁(yè)的文章鏈接
        @ListUrls 為文章頁(yè)鏈接(列表類(lèi)型)
        :param response:
        :return:
        '''
        ListUrls = response.css('.list-content ul li h6 a::attr(href)').extract()
        for ListUrl in ListUrls:
            ListUrl = 'http://fund.123.com.cn' + ListUrl
            yield Request(url=ListUrl,callback=self.FundContent_parse)            

設(shè)想:ColumnUrl 是拼接好的列表鏈接,然后把欄目鏈接回調(diào)給FundList_parse處理(FundList_parse是把列表頁(yè)中的文章鏈接提取出來(lái)),接下來(lái)ColumnNextUrl是獲取到下一頁(yè)的鏈接,接著判斷,如果ColumnNextUrl存在,把ColumnNextUrl回調(diào)自身,把列表頁(yè)的文章連接提取出來(lái)。
實(shí)際:事實(shí)上獲取到的下一頁(yè)鏈接并沒(méi)有回調(diào)給自身處理,請(qǐng)問(wèn)這是什么原因?

回答
編輯回答
你的瞳

FundList_parse的代碼呢,只看到了FundIndex_parse

2018年5月28日 05:53