node.jsを使用することによって、Webページをスクラップしようとしています。このため、cheerioとtinyreqモジュールを使用しています。私のソースコードは次のとおりです:ノード内のWebページの動的データの廃棄
// scrape function
function scrape(url, data, cb) {
req(url, (err, body) => {
if (err) { return cb(err); }
let $ = cheerio.load(body)
, pageData = {};
Object.keys(data).forEach(k => {
pageData[k] = $(data[k]).text();
});
cb(null, pageData);
});
}
scrape("https://www.activecubs.com/activity-wheel/", {
title: ".row h1"
, description: ".row h2"
}, (err, data) => {
console.log(err || data);
});
私のコードでは、h1タグのテキストは静的で、h2タグでは動的です。私はコードを実行している間、私は静的なデータを取得している、つまり、説明フィールドのデータが空です。以前のStackOverflowの質問に続いて、私はこの問題を克服するためにファントムjを使ってみましたが、ここでの動的データは、車輪を回転させて得られるデータである。私が使用しているウェブサイトに疑問がある場合は、https://www.activecubs.com/activity-wheel/を確認できます。