Javascript 如何从需要用户导航的站点部分刮取数据

Javascript 如何从需要用户导航的站点部分刮取数据,javascript,web-scraping,Javascript,Web Scraping,例如,假设我正在尝试从该页面中删除: 它只显示前50名的结果,很容易转到这个链接并获取这些数据。但是说我想进入前200名。作为一个用户,我可以单击下一页并查看下一个50结果,但它不会生成新的url。整个表由一些JavaScript控制,而不仅仅是我可以遵循的显式链接 在这种情况下,您如何使用代码导航到第2页等来抓取下一组记录?如果您打开浏览器开发工具上的“网络”面板,您可以看到站点加载表数据的XMLHttpRequest(XHR)请求: http://www.swtor.com/lb/data

例如,假设我正在尝试从该页面中删除:

它只显示前50名的结果,很容易转到这个链接并获取这些数据。但是说我想进入前200名。作为一个用户,我可以单击下一页并查看下一个50结果,但它不会生成新的url。整个表由一些JavaScript控制,而不仅仅是我可以遵循的显式链接

在这种情况下,您如何使用代码导航到第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页面