例如说我试图从这个页面中删除:
http://www.swtor.com/leaderboards/pvp/solo
它只显示前50个结果,很容易进入此链接并抓取这些数据。但是说我要抓200强。作为用户,我可以点击下一页查看下一个50结果,但它不会生成新的网址。整个表由一些JavaScript控制,而不仅仅是我可以遵循的显式链接。
在这样的情况下,你如何使用代码导航到第二页等等来刮掉下一组记录?
答案 0 :(得分:2)
如果您打开"网络"在您浏览器开发人员工具面板上,您可以看到该站点所做的XMLHttpRequest(XHR)请求加载表数据:
http://www.swtor.com/lb/data?page=1&column=pvp_ranked_solo&season=6
http://www.swtor.com/lb/data?page=2&column=pvp_ranked_solo&season=6
此端点返回非常方便的JSON,现在只需根据需要运行尽可能多的请求即可。提示:页面数量也在返回的JSON上,因此即使您想要所有记录,也无需解析单个HTML页面。