【问题标题】:Unable to scrape async script with cheerio无法使用cheerio 抓取异步脚本
【发布时间】:2017-03-10 05:46:14
【问题描述】:

我正在使用cheerio 制作爬虫,但在某些网站中,脚本是异步的,当我尝试从中获取所有脚本时,它们不会被选中。 这是我使用的代码:

function Test(webUrl) {
    request(webUrl, function(err, resp, html){
        if(!err && resp.statusCode == 200) {
            var $ = cheerio.load(html);
            console.log($('script'));
        }
    });
}

有人有什么解决办法吗?谢谢

【问题讨论】:

  • Cheerio 不会加载或运行它在内容中找到的嵌入式<script> 标签。因此,您只能获得 RAW HTML,而不是从脚本中插入的任何内容。

标签: javascript node.js web-scraping cheerio


【解决方案1】:

您需要使用 PhantomJS 来抓取动态内容。

这里是示例:http://code4node.com/snippet/web-scraping-with-node-and-phantomjs

【讨论】:

  • Mmmmh 试图用你给我的教程来做,但是这个例子不起作用,我不知道如何将它应用到我的程序中......
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-11-20
  • 1970-01-01
  • 2013-12-25
  • 2020-07-15
  • 2020-04-05
  • 1970-01-01
相关资源
最近更新 更多