2017-12-23 17 views
0

私のcheerioコードは機能していないようです。指定されたリンクのimgWrap div内にある<img>タグからsrcを取得しようとしています。CheerioがIMGを見つけられませんsrc

...私は .imgWrap imgとして .imgWrapを書き換えると findを削除しようとしましたが、それは私が $(element).children()または $(element).html()をすれば、私は私が期待する結果を参照してください。ただし

仕事のどちらか...しませんでした

request.get('http://www.bk.com/menu/burgers', function(error, response, body) { 
    const $ = cheerio.load(body); 

    let menu = $('.imgWrap').each(function(i, element) { 
     let thing = $(element).find('img').attr('src'); 
     console.log(thing); 
    }); 
}) 

答えて

0

この特定のウェブサイトはレイジーローディングを使用して画像を読み込むため、閲覧時のビューソースは実際に取得リクエストで受け取った情報とは異なります。

GET要求はimg要素に関連付けられsrcを有するのではなく、ビュー・ソースにsrcと同じ情報を保持しているdata-cfsrcありません。

ので、ラインは、実際にはこのようになります。

let thing = $(element).find('img').attr('data-cfsrc'); 

おかげで、このトラブルシューティングに役立つために@rlemonする大きな時間を!

関連する問題