如何使用cheerio获取脚本内容

我正在使用cheerio库,并试图让这个脚本字段 – script type="application/json"但由于某种原因,它无法find这些脚本标签。 哪里不对? 我该如何解决?

 var $ = require('cheerio') var parsedHTML = $.load(html) console.log( parsedHTML('script').get().length ); // this is 0 

如果你使用

 var parsedHTML = $.load('<html><head><script type="application/json" src="http://myscript.org/somescript.ks"></script></head></html>') console.log( parsedHTML('script').get()[0].attribs['src'] ); 

您可以获取url,然后使用请求获取内容

如果你想获得一个内联脚本,你可以这样做:

 console.log( parsedHTML('script').get()[0].children[0].data ); 

对于那些还在徘徊到这个线程,下面的解决scheme为我工作:

 const $ = cheerio.load(html, {xmlMode: false}); $('script').length; // no longer 0 

(请参阅htmlparser2的选项 )