感谢有人回答这个问题: scrapy can't crawl all links in a page
我现在已经成功抓取了Ajax网页。但是,由于我只是使用formdata={'start':'0','num':'60','numChildren':'0','ipf':'1','xhr':'1'}
模拟了一个请求,因此只能抓取该页面中的120个链接(总共540个)。
我检查了'网络',它显示我似乎需要更多编辑formdata:
] 1
我知道还有很多其他方法可以抓取ajax页面,但在互联网上探索各种答案之后仍然没有明确的想法。
在我的情况下,有人可以提供编辑formdata的方法吗?或提供更简单的解决方案?
答案 0 :(得分:1)
您可以使用类似的内容来更改formdata。如果您还需要更改num
,则可以根据需要编辑循环。
for i in range(0,10):
yield FormRequest(url="https://play.google.com/store/apps/category/GAME/collection/topselling_new_free?authuser=0", method="POST", formdata={'start':str(i+60),'num':'60','numChildren':'0','ipf':'1','xhr':'1'}, callback=self.data_parse)