SemaltはWebページをこするための5つのステップを提案しています

Scrapyは、さまざまなWebサイトから情報を抽出するためのオープンソースおよびフレームワークです。 APIを使用し、Pythonで記述されています。 Scrapyは現在、Scrapinghub Ltdという名前のWebスクレイピング会社によって管理されています

これは、Scrapyを使用してWebクローラーを記述し、Craigslistを解析して、CSV形式で情報を格納する方法に関する簡単なチュートリアルです。このチュートリアルの5つの主な手順は次のとおりです。

1.新しいScrapyプロジェクトを作成する

2. Webサイトをクロールしてデータを抽出するスパイダーを作成する

3.コマンドラインを使用してスクレイピングされたデータをエクスポートする

4.スパイダーを変更してリンクをたどる

5.クモの引数を使用する

1.プロジェクトを作成する

最初のステップは、プロジェクトを作成することです。 Scrapyをダウンロードしてインストールする必要があります。検索バーに、データを保存するディレクトリ名を入力する必要があります。 Scrapyはさまざまなスパイダーを使用して情報を抽出し、これらのスパイダーは最初にディレクトリの作成を要求します。スパイダーを機能させるには、ディレクトリのリストにアクセスして、そこに特定のコードを挿入する必要があります。現在のディレクトリにあるファイルに注目し、2つの新しいファイルquotes-a.htmlとquotes-b.htmlに注目してください。

2. Webサイトをクロールしてデータを抽出するスパイダーを記述します。

スパイダーを作成してデータを抽出する最良の方法は、Scrapyのシェルで異なるセレクターを作成することです。 URLは常に引用符で囲む必要があります。それ以外の場合、ScrapyはそれらのURLの性質または名前を即座に変更します。クモを適切に記述するには、URLを二重引用符で囲む必要があります。 .extract_first()を使用して、インデックスエラーを回避する必要があります。

3.コマンドラインを使用して、スクレイピングされたデータをエクスポートします。

コマンドラインを使用して、スクレイピングされたデータをエクスポートすることが重要です。エクスポートしないと、正確な結果が得られません。スパイダーは、有用な情報を含むさまざまなディレクトリを生成します。この情報をより適切にエクスポートするには、yield Pythonキーワードを使用する必要があります。 JSONファイルへのデータのインポートが可能です。 JSONファイルはプログラマーにとって便利です。 JQなどのツールを使用すると、スクレイピングされたデータを問題なくエクスポートできます。

4.リンクをたどるようにスパイダーを変更します。

小さなプロジェクトでは、リンクを適切にたどるようにスパイダーを変更できます。ただし、大規模なデータスクレイピングプロジェクトでは必要ありません。スパイダーを変更すると、アイテムパイプラインのプレースホルダーファイルが設定されます。このファイルは、tutorial / pipelines.pyセクションにあります。 Scrapyを使用すると、洗練されたスパイダーを構築し、いつでも場所を変更できます。一度に複数のサイトを抽出し、さまざまなデータ抽出プロジェクトを実行できます。

5.スパイダー引数を使用します。

parse_authorコールバックは、動的なWebサイトからデータを抽出するために使用できるスパイダー引数です。特定のコードを使用して、スパイダーにコマンドライン引数を提供することもできます。スパイダー引数はすぐにスパイダー属性になり、データの全体的な外観を変更します。

このチュートリアルでは、Scrapyの基本のみを取り上げました。このツールには多くの機能とオプションがあります。 Scrapyをダウンロードしてアクティブ化するだけで、その仕様について詳しく知ることができます。