如何在刷新后保留的网页上更改AJAX代码?

时间:2016-12-10 22:34:31

标签: json ajax web-crawler

我想抓取metal-archives.com并将信息放在有关金属乐队的数据库中。在查看代码20分钟后,我发现他们将数据保存在JSON文件中,可以使用this URL访问该文件。唯一的问题是AJAX代码设置为每页只显示200个条目:

$(document).ready(function() {
        createGrid(
        "#searchResults", 200, 

在文件的顶部,我可以看到有超过11,000个乐队,但只有200个乐队。此外,当我点击不同的页面时,AJAX负责动态获取数据,而不更改地址栏中的URL,因此我无法看到其余的乐队。

然后我尝试将上面的代码更改为"#searchResults", 1000,希望它在刷新后仍然存在,但是,唉,没有运气。知道如何做到这一点,基本上可以将整个JSON解析为Python字典并创建数据库吗?

1 个答案:

答案 0 :(得分:1)

由于网址总是返回200条记录,因此您可以循环调用此网址,直到获得所有记录

第1步

使用以下网址,传递iDisplayStart=0并获得前200条记录,

http://www.metal-archives.com/search/ajax-band-search/?iDisplayStart=0&iDisplayLength=200

第2步

解析json并在json中获取iTotalRecords的值,并在循环中反复调用url,直到获得所有记录。

您可以将iDisplayStart更改为iDisplayStart+=200以拨打下面的200条记录,如下所示

http://www.metal-archives.com/search/ajax-band-search/?iDisplayStart=200&iDisplayLength=200

然后,

http://www.metal-archives.com/search/ajax-band-search/?iDisplayStart=400&iDisplayLength=200

希望它对你有所帮助。