我正在尝试抓取包含200+个<li class="classToGet">
元素的网页,当向下滚动时,这些元素会随AJAX一起加载。当我用urllib2.urlopen(url).read()
读取站点的来源时,我只能得到最初的100个<li>
。
当我在浏览器中关闭JavaScript并转到页面时,将显示所有200多个<li>
。在加载页面时,如何禁用urllib2的JavaScript?
谢谢您的帮助。
最佳答案
我认为您与HTTP标头User-Agent有关
我做了一个小项目,可以从Google图片中获取图片。
开始时,我使用了如下头:
Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/28.0.1500.71 Safari/537.36
但是,我得到了在Pinterest中工作的页面,这不是我想要的。因为必须获取页面。所以我将User-Agent的值更改为另一个:
Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.1.5) Gecko/20091102 Firefox/3.5.5 (.NET CLR 3.5.30729)
然后,它可以立即找到。它可以给我我想要的东西。