この記事は、nodejs クローラーの初期トライアル用に、主にスーパーエージェントとチェリオに関する知識を紹介します。非常に優れており、必要な友人は参考にしてください。ここ数日から長い間、nodejs を学び、記事のタイトル、ユーザー名、読み取り数、数値をクロールするクローラ https://github.com/leichangchun/node-crawlers/tree/master/superagent_cheerio_demo を作成しましたブログパークのホームページ上のおすすめとユーザーアバターの簡単な概要が完成しました。
これらのポイントを使用してください: 1. ノードのコアモジュール - ファイルシステム 2. http リクエスト用のサードパーティモジュール - スーパーエージェント
3. DOM を解析するサードパーティモジュール - Cheerio
どうぞデモでは簡単な使用法のみを示しています。
準備
npmを使用して依存関係を管理すると、依存関係情報はpackage.jsonに保存されます
1 2 |
|
必要な機能モジュールを紹介します
1 2 3 4 |
|
クロールしたいブログパークのホームページのコンテンツにアクセスするには、まずホームページのアドレスをリクエストし、返された HTML を取得する必要があります。ここでは、スーパーエージェントを使用して http リクエストを実行します。指定された URL への get リクエスト。リクエストが正しくない場合はエラーが返されます (エラーがない場合、エラーは null または未定義)。res は返されるデータです。
HTMLコンテンツを取得した後、必要なデータを取得する必要があります。このとき、Cheerioを使用してDOMを解析する必要があります。Cheerioは、最初にターゲットのHTMLをロードしてから、それを解析する必要があります。 jquery の API に慣れている場合は、すぐに使い始めることができます。コードサンプルを直接見てください
1 2 3 4 |
|
上記のDOMを解析した後、必要な情報コンテンツが結合され、画像のURLが取得されたので、それが保存され、コンテンツが保存されます。指定したディレクトリに txt ファイルを作成し、指定したディレクトリに画像をダウンロードします
最初にディレクトリを作成し、nodejs コア ファイル システムを使用します
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
|
指定したディレクトリを作成したら、データを書き込むことができます。 txt ファイルは既に存在しますので、それを直接書いて使用します。 writeFile()
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
|
1 2 3 4 |
|
デモを実行して効果を確認すると、データは正常に下降しています
シンプルなもの デモはそれほど厳密ではないかもしれませんが、常にノードに向けた最初の小さなステップです。 上記は私があなたのためにまとめたものです。 関連記事:Vueのルーティング動的リダイレクトとナビゲーションガードの例
以上がNodejsクローラーを使ったスーパーエージェントとチェリオの使い方の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。