nodejsを使用してスクレイピングを実装しようとしています。特定の URL に要求を送信しています。応答を取得したら、応答を使用して、ページ内の各製品を配列に格納しています。各製品について、製品名、価格、割引などの製品の詳細を表示しようとしています。これは次のコードで実行しています。
var $products = $body.find('.fashion-item');
$products.each(function (i, item) {
var $name = ($(item).find('.info .title').text(),
$price=$(item).find('span.price.regular').text().substr(6),
$discount=$(item).find('span.price.percentoff').text().slice(0,2);
self.items[i] = {
title: $name,
price: $price,
discount: $discount,
};
});
console.log(self.items);
正常に動作しています。クラス名が 'fashion-item' や 'fashion-item-first' のようなものである場合、これはすべて正常に機能します。しかし、クラス名に単語の間にスペースが含まれている場合、配列 ($products) に格納された製品を取得できません。つまり、$products の配列の長さはゼロです。私の質問は、クラス名がこの「ファッションアイテムファースト」の場合、同じことを行う方法です。私はとても試してみましたが、私にはわかりませんでした。私を助けてください。