Как изменить и сохранить для повторения загрузки страниц "на страницу" элементы paginator для aspx-страницы? - PullRequest
0 голосов
/ 11 февраля 2019

Я пишу сканер для этого начального URL: https://usa.ingrammicro.com/_layouts/CommerceServer/IM/search2.aspx#PNavDS=N:0&t=pTab, используя теперь этот код:

class IngrammicroSpiderSpider(scrapy.Spider):
    name = 'ingrammicro_spider'
    allowed_domains = ['usa.ingrammicro.com']
    start_urls = [f'https://usa.ingrammicro.com/_layouts/CommerceServer/IM/search2.aspx#PNavDS=N:0,Nao:{str(x)}&t=pTab' for x in range(0, 912990 + 1, 10)]

    def start_requests(self):
        for url in self.start_urls:
            yield SplashRequest(url, self.parse, args={'wait': 10.0})

И хотел бы перемещаться по всем страницам в paginator с настройкой «На страницу» по100 элементов, и теперь он загружается только на 10, я искал в сети - XHR для заголовков и файлов cookie и не смог найти какие-либо настройки, связанные с этим, как это можно сделать?Я хотел бы получить только 9000 страниц на 100 элементов, а не 90000 страниц на 10 элементов.Я не говорю об изменении URL-адресов на что-то вроде этого:

start_urls = [f'https://usa.ingrammicro.com/_layouts/CommerceServer/IM/search2.aspx#PNavDS=N:0,Nao:{str(x)}&t=pTab' for x in range(0, 900001, 100)]

Поскольку они все равно будут получать их по 10 элементам на странице, то есть 0-10, затем 100-110, затем 200-210 и т. Д..

1 Ответ

0 голосов
/ 11 февраля 2019

Изменить как,

start_urls = [f'https://usa.ingrammicro.com/_layouts/CommerceServer/IM/search2.aspx#PNavDS=N:0,Nao:{str(x)}&t=pTab' for x in range(0, 900001, 100)]
...