静的 Web サイト: Axios と Cheerio
JavaScript を使用して静的 e コマース Web サイトをクロールする手順を見てみましょう。この例では、HTTP リクエスト用の Axios と HTML 解析用の Cheerio という 2 つの一般的なライブラリを使用します。
*1.依存関係をインストールします *
npm:
を使用して Axios と Cheerio をインストールします。
npm install axios Cherio
*2.スクリプトの作成 *
JavaScript ファイルを作成します。 B.Ecommerce.js をスクレイピングし、コード エディターで開きます。
*3.モジュールのインポート *
Axios と Cheerio をスクリプトにインポートします:
const axios = require('axios');
const チェリオ = require('チェリオ');
*4.ターゲット URL を定義 *
アクセスしたい電子商取引 Web サイトを選択します。この例では、仮想 URL http://example-ecommerce.com を使用します。これを目的の URL に置き換えます:
const url = 'http://example-ecommerce.com';
*5. HTML コンテンツを取得 *
Axios を使用して、ターゲット URL に GET リクエストを送信し、HTML コンテンツを取得します:
axios.get(url)
.then(response => {
const html = 応答.データ;
// HTML コンテンツを解析できるようになりました
})
.catch(error => {
console.error('ページの取得エラー:', error);
});
*6. HTML を解析してデータを抽出します *
Cheerio を使用して HTML コードを解析し、製品名や価格などの必要な情報を抽出します:
axios.get(url)
.then(response => {
const html = 応答.データ;
const $ = Cheerio.load(html);
const products = []; $('.product').each((index, element) => { const name = $(element).find('.product-name').text().trim(); const price = $(element).find('.product-price').text().trim(); products.push({ name, price }); }); console.log(products);
})
.catch(error => {
console.error('ページの取得エラー:', error);
});
*最重要ポイント*
*完全なスクリプト例: *
const axios = require('axios');
const チェリオ = require('チェリオ');
const url = 'http://example-ecommerce.com';
axios.get(url)
.then(response => {
const html = 応答.データ;
const $ = Cheerio.load(html);
const products = []; $('.product').each((index, element) => { const name = $(element).find('.product-name').text().trim(); const price = $(element).find('.product-price').text().trim(); products.push({ name, price }); }); console.log(products);
})
.catch(error => {
console.error('ページの取得エラー:', error);
});
*ランディング ページのカスタマイズ: *
最近、Web スクレイピングに Python、Ruby、または別のプログラミング言語が必要になった場合、Octoparse は、特に JavaScript をサポートする Web サイトにとって優れたツールです。
具体的な例を見てみましょう: 対象の Web サイトがあり、スクレイピングを開始したい場合は、まずそのサイトが JS スクレイピングに対してブロックされているかどうかを確認する必要があります。 Web サイトごとに使用する保護方法が異なるため、特にスクレイピングで期待どおりの結果が得られない場合、何かが間違っていることに気づくまでに時間がかかり、イライラする試行が必要になる場合があります。ただし、Web スクレイピング ツールを使用すると、データ抽出プロセスがスムーズに進みます。
多くの Web スクレイピング ツールは、クローラーを作成する手間を省きます。 Octoparse は、JavaScript の多いページをスクレイピングする際に特に効率的であり、Ajax を使用するページを含む Web ページの 99% からデータを抽出できます。キャプチャ解決サービスも提供します。 Octoparse は無料で使用でき、自動検出機能と、効率的なデータ抽出を可能にする 100 を超える使いやすいテンプレートを提供します。新規ユーザーも 14 日間のトライアルを利用できます。
以上がJavaScript Web サイトを効率的にスクレイピングするの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。