如何更改和保留用于通过分页器“每页”项进行迭代的aspx-page加载?

时间:2019-02-11 09:34:32

标签: python asp.net scrapy paginator

我正在为此起始网址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})

并且想通过设置100个元素的“每页”来导航分页器中的所有页面,现在它仅按10个元素加载,我已经在网络中搜索-XHR中的标头和cookie,但找不到任何设置与此相关,该怎么办?我只想要9000页乘100元素,而不是90000页乘10元素。 我不是在谈论将网址更改为这样的内容:

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 :(得分:0)

更改为

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)]