**最初のクローラーとは何ですか? ****
Webクローラー(FOAFコミュニティではWebスパイダー、Webロボット、および多くの場合Webチェイスとも呼ばれます)は、特定のルールに従ってWorld WideWeb上の情報を自動的にクロールするプログラムまたはスクリプトです。
私の経験によると、Pythonクローラーを学ぶには、次の点を学ぶ必要があります。
まず、クローラーを作成するためにPythonを使用する必要があります。Pythonの基本を理解する必要があります。基盤は地上に構築されており、基盤を忘れることはできません。ハハ、それから私が読んだPythonチュートリアルをいくつか共有します。友達はそれを参照として使用できます。 。
誰もが学ぶことができる無料のPython入門チュートリアルがオンラインにたくさんあります。ビデオチュートリアルだけでなく、学習プロセスの問題を解決するのに役立つ対応するQ&Aセクションもあります。効果は非常に優れています。内容は基本的に最も基本的です。始めれば、これがそれです。
後で、Liao先生のPythonチュートリアルを見つけました。とても理解しやすく、とても気持ちが良かったです。Pythonについてもっと知りたい場合は、こちらをご覧ください。
私が見た簡潔なPythonチュートリアルもあり、それは気持ちがいいです
学習URL:簡潔なPythonチュートリアル(https://woodpecker.org.cn/abyteofpython_cn/chinese/pr01.html#s01)
これは私の学部研究室の先輩です。私は始めたときに彼の記事を参照し、新しい要約を作成しました。その後、これらの一連の記事は彼に基づいていくつかのコンテンツを追加しました。
学習ウェブサイト:王海の研究室(https://blog.csdn.net/wxg694175346/category_1418998_1.html)
urllibおよびurllib2ライブラリは、Pythonクローラーを学習するための最も基本的なライブラリです。このライブラリを使用すると、Webページのコンテンツを取得し、通常の式でコンテンツを抽出および分析して、目的の結果を得ることができます。学習の過程でこれをあなたと共有します。
Pythonの正規式は、文字列を照合するための強力な武器です。その設計アイデアは、記述言語を使用して文字列のルールを定義することです。ルールに一致する文字列はすべて「一致」していると見なされます。そうでない場合、文字列は不正です。これは、後のブログ投稿で共有されます。
Pythonマスターであり、クローラーの基本的な知識を習得している場合は、Pythonフレームワークを探してください。私が選択したフレームワークはScrapyフレームワークです。このフレームワークの強力な機能は何ですか?以下はその公式紹介です:
HTML、XMLソースデータの選択と抽出の組み込みサポート
スパイダー間で共有される一連の再利用可能なフィルター(つまり、アイテムローダー)を提供し、クロールデータのインテリジェントな処理のための組み込みサポートを提供します。
フィードのエクスポートを通じて、複数の形式(JSON、CSV、XML)および複数のストレージバックエンド(FTP、S3、ローカルファイルシステム)の組み込みサポートを提供します
クロールされたデータ内の画像(またはその他のリソース)を自動的にダウンロードできるメディアパイプラインを提供します。
高いスケーラビリティ。シグナルと設計されたAPI(ミドルウェア、拡張機能、パイプライン)を使用して、機能をカスタマイズできます。
組み込みのミドルウェアと拡張機能は、次の機能をサポートします。
クッキーとセッション処理
HTTP圧縮
HTTP認証
HTTPキャッシュ
ユーザーエージェントシミュレーション
robots.txt
クロール深度制限
英語以外の言語での非標準または誤ったコーディング宣言については、自動検出と堅牢なコーディングサポートが提供されます。
テンプレートに基づくクローラーの生成をサポートします。クローラーの作成を高速化しながら、大規模なプロジェクトのコードの一貫性を保ちます。詳細については、genspiderコマンドを参照してください。
複数のクローラーでのパフォーマンス評価と障害検出のために、拡張可能な状態収集ツールが提供されています。
XPath式のテスト、クローラーの作成とデバッグに非常に便利なインタラクティブなシェル端末を提供します
システムサービスを提供して、実稼働環境での展開と運用を簡素化します
組み込みのWebサービスにより、マシンを監視および制御できます
組み込みのTelnetターミナル、ScrapyプロセスでPythonターミナルに接続することにより、クローラーを表示およびデバッグできます。
ロギングは、クロールプロセス中にエラーをキャッチするのに便利です。
クロールするサイトマップをサポートする
キャッシュ付きDNSリゾルバー
公式文書:http://doc.scrapy.org/en/latest/
基本的な知識を習得したら、このScrapyフレームワークを使用しましょう!
たくさん引っ張った後、役に立つものが少ないようですので、引っ張らないようにしましょう!
ナレッジポイントの拡張:
クローラーの基本原則
クローラーは、ブラウザまたはアプリアプリケーションでのユーザーの操作をシミュレートし、操作プロセスと自動化を実現するプログラムです。
ブラウザにURLを入力してEnterキーを押すと、バックグラウンドで何が起こりますか?たとえば、https://www.baidu.comと入力した場合
簡単に言えば、このプロセスでは次の4つのステップが発生しました。
簡単に言うと、Webクローラーが実行する必要があるのは、ブラウザーの機能を実装することです。 URLを指定することにより、ユーザーが必要とするデータが直接返されます。手動でブラウザーを操作して取得する必要はありません。
これまでのところ、Pythonクローラーの基本的な知識に関するこの記事はここで紹介されています。Python2クローラーの詳細については、ZaLou.Cnを検索してください。
Recommended Posts