0

我有一个奇怪的问题-

由于这个网站呈现时间数据的方式很奇怪,我想写一个小解析器。

我正在一个特定的网址上测试我的代码 -

http://www.sfweekly.com/search/results/?keyword=*&type=events#type:events/page:57/

请注意,当您访问 url 时,页面首先会加载一堆条目,然后更改这些条目。那里发生的事情是它会转到第一页,然后重新定向。我该如何解决?

刮我正在使用

jsdom.env({
    html: url,
    scripts:['http://code.jquery.com/jquery.js'],
    done: function(errors,window){
                 //doSomething

我原本以为我可以暂停一下来解决这个问题,但事实并非如此。有什么方法可以让我“监听”重定向并等到真正的页面被加载?我也有一种感觉,可以使用 jquery 替换输入新条目,但我不确定如何测试该理论。

4

1 回答 1

0

像这样抓取 ajax-y 网站可能会很痛苦。在这种情况下,似乎有一种解决方法,因为您可以在您选择的浏览器中的开发人员工具中窥探并发现 ajax 端点,并直接使用它:

http://www.sfweekly.com/search/ajaxsearch/type%3aevents/page:57/

在某些情况下,故意尝试阻止爬虫的 javascript-y 站点,您必须使用某种无头或自动浏览器的情况。这很慢而且很烦人,如果可以的话,避免它。

于 2013-03-23T06:18:59.967 回答