Cheerio libを使用していて、このスクリプトフィールドを取得しようとしています-script type="application/json"
しかし、何らかの理由で、これらのスクリプトタグが見つかりません。なにが問題ですか?どうすれば修正できますか?
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 );
まだこのスレッドに迷い込んでいる人には、次の解決策が役に立ちました。
const $ = cheerio.load(html, {xmlMode: false});
$('script').length; // no longer 0
( htmlparser2のオプション を参照)