Scrapy 2.5 文書¶
Scrapyは高速で高レベルのWebクロール(web crawling)およびWebスクレイピング(web scraping)フレームワークであり、Webサイトをクロールし、ページから構造化データを抽出するために使用されます。 データ・マイニングから監視、自動テストまで、幅広い目的に使用できます。
お助け¶
問題がありますか? でしたらこれらが助けになるでしょう。
まず、 FAQ を見て下さい。一般的な質問に対する回答があります。
StackOverflowで scrapy タグを付けて質問するか検索します(StackOverflow using the scrapy tag)。
Scrapy subreddit で質問するか検索してください。
scrapy-users mailing list のアーカイブで質問を検索します。
#scrapy IRC channel で質問します。
issue tracker でScrapyのバグを報告してください。
入門¶
- Scrapyを3行で説明シル
Scrapyとは何か、それがどのようにあなたに役立つかの理解。
- インストール ガイド
Scrapyをあなたのコンピュータにインストール。
- Scrapyチュートリアル
あなたは最初のScrapyプロジェクトを書きます。
- 例
作成済みのScrapyプロジェクトを題材に、もっともっと学びます。
基本の概念¶
- コマンドラインツール
Scrapyプロジェクトの管理に使用するコマンドライン・ツールについて学習します。
- スパイダー
Webサイトをクロールするルールを作成します。
- セレクター
XPathを使用してWebページからデータを抽出します。
- Scrapyシェル
対話環境で抽出コードをテストします。
- アイテム
あなたがスクレイピングしたいと欲するデータを定義します。
- アイテム・ローダー
抽出したデータをあなたのアイテムに入れます。
- アイテム・パイプライン
スクレイピングしたデータを後処理して保存します。
- フィード・エクスポート
さまざまな形式を使用して、さまざまストレージに、スクレイピングされたデータを出力します。
- リクエストとレスポンス
HTTPリクエストとレスポンスを表すために使用されるクラスを理解します。
- リンク抽出器(link extractors)
ページからたどるリンクを抽出する便利なクラス。
- 設定
Scrapyをどのように設定するか学びます。 available settings 参照。
- 例外(Exceptions)
Scrapyで利用可能な全ての例外とその意味
組み込み済サービス群¶
- ロギング(logging)
ScrapyでPython組み込みのログ機能を使う方法を習います。
- 統計をとる
あなたのスクレイピング・クローラーの統計を収集します。
- 電子メールの送信
特定のイベントが発生したときに電子メールを送信します。
- Telnetコンソール
組み込みのPythonコンソールを使って、実行している最中のクローラーを詳しく調べます。
- Webサービス
Webサービスを使用してクローラーを監視および制御します。
特定の問題の解決¶
- F.A.Q.(よくある質問と回答)
よくある質問とその回答。
- スパイダーのデバッグ
Scrapyスパイダーの一般的な問題をデバッグする方法を学びます。
- スパイダー規約(contract)
スパイダーをテストするために規約(contract)を使用する方法を学びます。
- よくある例
Scrapyのいくつかの一般的な慣例に親しみます。
- 広範なクロール
多数のドメインを並行してクロールするためのScrapyのチューニング。
- Webブラウザの開発ツールを使ってスクレイピングする
Webブラウザ付属の開発ツールを使用してスクレイプする方法を学びます。
- 動的に読み込まれたコンテンツの選択
動的にロードされるWebページ・データを読み取ります。
- メモリ・リークのデバッグ
クローラーで、どのようにメモリ・リークを探して、そしてどのように取り除くかを学びます。
- ファイルと画像のダウンロードおよび処理
あなたがスクレイプしたアイテムに関連するファイルや画像をダウンロードします。
- スパイダーのデプロイ
リモート・サーバに、あなたのScrapyスパイダーを配置し実行します。
- AutoThrottle拡張機能
負荷に応じてクロール速度を動的に調整します。
- ベンチマーキング
Scrapyがあなたのハードウェアでどのように機能するかをチェックします。
- ジョブ制御: クロールの一時停止と再開
大きなスパイダーのクロールを一時停止および再開する方法を学習します。
- スパイダー規約(contract)
コルーチン構文 の利用
- asyncio(非同期I/O)
Scrapyの拡張¶
- アーキテクチャ概観
Scrapyアーキテクチャを理解する。
- ダウンローダー・ミドルウェア
ページのリクエストとダウンロードの方法をカスタマイズします。
- スパイダー・ミドルウェア
あなたのスパイダーの入力と出力をカスタマイズします。
- 拡張機能
あなたのカスタム機能でScrapyを拡張する。
- コアAPI
Scrapy機能を拡張するために拡張機能やミドルウェアを使用します。
- シグナル
利用可能なすべてのシグナルとそれらがどのように動くかをご覧下さい。
- アイテム・エクスポーター
スクレイプしたアイテムをファイル(XML、CSVなど)にすばやくエクスポートします。
その他すべて¶
- リリース・ノート
直近のScrapyバージョンの変更点をご覧ください。
- Scrapyへの貢献
Scrapyプロジェクトに貢献する方法を学びます。
- バージョン管理とAPIの安定性
Scrapyのバージョン管理とAPIの安定性を理解します。