感谢有人回答这个问题: scrapy can't crawl all links in a page
我现在已经成功抓取了一个 Ajax 网页。但是,该页面中只能抓取 120 个链接(总共 540 个),因为我只是使用 formdata={'start':'0','num':'60','numChildren':' 模拟了一个请求0','ipf':'1','xhr':'1'}
.
我检查了“网络”,它显示我似乎需要更多编辑表单数据:
] 1
我知道还有很多其他方法可以抓取ajax页面,但在互联网上探索各种答案后仍然没有明确的想法。
有人可以提供在我的情况下编辑 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)
关于python - 如何编辑 'formdata'来爬取Ajax动态页面?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35393883/