Python-web-scraping-python-modules-for-web-scraping
Webスクレイピング用のPythonモジュール
この章では、Webスクレイピングに使用できるさまざまなPythonモジュールについて学びましょう。
virtualenvを使用したPython開発環境
Virtualenvは、孤立したPython環境を作成するツールです。 virtualenvの助けを借りて、Pythonプロジェクトに必要なパッケージを使用するために必要なすべての実行可能ファイルを含むフォルダーを作成できます。 また、グローバルインストールにアクセスせずにPythonモジュールを追加および変更できます。
次のコマンドを使用して virtualenv をインストールできます-
今、私たちは次のコマンドの助けを借りてプロジェクトを表すディレクトリを作成する必要があります-
今、この次のコマンドの助けを借りてそのディレクトリに入る-
今、私たちは次のように選択した仮想環境フォルダを初期化する必要があります-
次に、以下のコマンドを使用して仮想環境をアクティブ化します。 正常にアクティブ化されると、ブラケットの左側にその名前が表示されます。
次のように、この環境に任意のモジュールをインストールできます-
仮想環境を非アクティブ化するには、次のコマンドを使用できます-
(websc)が非アクティブ化されていることがわかります。
Webスクレイピング用のPythonモジュール
Webスクレイピングは、Webから有用な情報を自動的に抽出、解析、ダウンロード、整理できるエージェントを構築するプロセスです。 つまり、Webスクレイピングソフトウェアは、Webサイトからデータを手動で保存する代わりに、要件に従って複数のWebサイトからデータを自動的にロードおよび抽出します。
このセクションでは、Webスクレイピングに役立つPythonライブラリについて説明します。
リクエスト
これは、単純なPython Webスクレイピングライブラリです。 Webページへのアクセスに使用される効率的なHTTPライブラリです。 Requests の助けを借りて、Webページの生のHTMLを取得し、データを取得するために解析することができます。 *リクエスト*を使用する前に、そのインストールを理解してください。
リクエストのインストール
仮想環境またはグローバルインストールのいずれかにインストールできます。 pip コマンドの助けを借りて、次のように簡単にインストールできます-
例
この例では、Webページに対してGET HTTPリクエストを作成しています。 このためには、まず次のようにリクエストライブラリをインポートする必要があります-
次のコード行では、リクエストを使用して、GETリクエストを作成することにより、URL [[1]] HTTPリクエストを作成します。
これで、次のように .text プロパティを使用してコンテンツを取得できます-
次の出力では、最初の200文字が取得されていることに注意してください。
Urllib3
Urllib3のインストール
例:Urllib3とBeautifulSoupを使用したスクレイピング
次の例では、 Urllib3 および BeautifulSoup を使用してWebページをスクレイピングしています。 Webページから生データ(HTML)を取得するために、リクエストライブラリの場所で Urllib3 を使用しています。 次に、そのHTMLデータの解析に BeautifulSoup を使用しています。
これは、このコードを実行したときに観察される出力です-
セレン
これは、さまざまなブラウザとプラットフォームにまたがるWebアプリケーション向けのオープンソースの自動テストスイートです。 単一のツールではなく、ソフトウェアのスイートです。 Python、Java、C#、Ruby、JavaScript用のセレンバインディングがあります。 ここでは、セレンとそのPythonバインディングを使用してWebスクレイピングを実行します。 リンクlink:/selenium/index [Selenium]でSelenium with Javaの詳細を学ぶことができます。
Selenium Pythonバインディングは、Firefox、IE、Chrome、RemoteなどのSelenium WebDriversにアクセスするための便利なAPIを提供します。 現在サポートされているPythonバージョンは2.7、3.5以上です。
Seleniumのインストール
seleniumは選択したブラウザとのインターフェイスにドライバーを必要とするため、それをダウンロードする必要があります。 次の表は、さまざまなブラウザーと、それらをダウンロードするためのリンクを示しています。
Chrome | https://sites.google.com/a/chromium.org/ |
Edge | https://developer.microsoft.com/ |
Firefox | https://github.com/ |
Safari | https://webkit.org/ |
例
この例は、セレンを使用したWebスクレイピングを示しています。 また、セレンテストと呼ばれるテストにも使用できます。
指定されたバージョンのブラウザー用の特定のドライバーをダウンロードした後、Pythonでプログラミングを行う必要があります。
まず、次のようにセレンから webdriver をインポートする必要があります-
次に、要件に従ってダウンロードしたWebドライバーのパスを指定します-
次に、Pythonスクリプトで制御されるWebブラウザーで開きたいURLを指定します。
また、lxmlで提供されるxpathを提供することにより、特定の要素をスクレイピングすることもできます。
出力については、Pythonスクリプトで制御されているブラウザーを確認できます。
スクレイピー
ScrapyはPythonで書かれた高速でオープンソースのWebクロールフレームワークであり、XPathに基づくセレクターの助けを借りてWebページからデータを抽出するために使用されます。 Scrapyは、BSDでライセンスされた2008年6月26日に初めてリリースされ、2015年6月にマイルストーン1.0がリリースされました。 Webサイトからデータを抽出、処理、構造化するために必要なすべてのツールを提供します。
Scrapyのインストール
Scrapyの詳細については、次のリンクにアクセスしてください:/scrapy/index [Scrapy]