Как извлечь все ссылки на страницы - PullRequest
0 голосов
/ 30 августа 2018

Я новичок в области scrapy, поэтому я хочу спросить, как извлечь все данные из ссылки на страницы. Потому что я создал это в своем коде, но он просто извлекает один или два элемента на каждую ссылку, которую я извлекаю. Это мой код:

    def parse(self, response):

        rules = (
                Rule(LinkExtractor(allow='div.listCont:nth-child(2) > ul:nth-child(1)'), callback='parse_details'),
                Rule(LinkExtractor(restrict_css='ul > li > a[href*="maker"]'), follow =True),
              )

        for url in response.xpath('//ul[1]//li/a[contains(@href, "maker")]').css('a::attr(href)').extract():
            url =  response.urljoin(url)
            yield scrapy.Request(url, callback=self.parse_details)


    def parse_details(self, response):      
        yield {
                'Name' : response.css('div.itmName h3:nth-child(1) > a:nth-child(1) ::text').extract_first(),
                'Price' : response.css('div.itmPrice > a.price ::text').extract_first(),
        }
        next_page_url = response.css('li.last > a::attr(href)').extract_first()
        if next_page_url:
            next_page_url = response.urljoin(next_page_url)
            yield scrapy.Request(url=next_page_url, callback=self.parse_details)

Когда я рисую, он показывает только одну или две в каждой ссылке, которую я извлекаю. Должен ли я добавить правило в настройке для глубины?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...