nodejを使用してスクレイピングを実装しようとしていますか。特定のURLにリクエストを送信し、レスポンスを受け取ると、レスポンスを使用してページ内の各製品を配列に格納しています。各製品について、商品名、価格、割引などの商品詳細を表示しようとしています。これは次のコードで行います。nodejsを使用してWebスクレイピングでクラスセレクタを指定する方法
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'のようなものなら、これはうまくいきます。しかし、クラス名に単語の間のスペースが含まれている場合、array($ products)に格納されている商品がない、つまり$ productsの配列の長さはゼロです。私の質問は、このようなクラス名の場合、同じことをする方法です '最初のファッションアイテム'。私は非常に試しましたが、私は何の考えも得ていませんでした。私を助けてください。
はどうもありがとうございました使用しています。問題は解決された。 –