Pythonによるデータ分析・機械学習ブログ

Pythonによるデータの前処理・グラフ化、機械学習、統計解析、画像処理、Webスクレイピング、自然言語処理の基礎について紹介していきます。

MENU

webdriver_managerを用いてPythonで簡単にWebスクレイピング

 

はじめに

近年、AIや機械学習が注目されるに伴い、データを収集することの重要性が高まっています。その中でもWebから情報を抽出・取得する方法があり、その一つにWebスクレイピングという手法があります。

WebスクレイピングWikipediaにて以下の様に説明されています。

ウェブスクレイピングとは、ウェブサイトから情報を抽出するコンピュータソフトウェア技術のこと。通常このようなソフトウェアプログラムは低レベルのHTTPを実装することで、もしくはウェブブラウザを埋め込むことによって、WWWのコンテンツを取得する。

また、AIや科学技術計算に用いられるプログラミング言語Pythonを用いてライブラリをインストールしてWebスクレイピングをすることができます。Webスクレイピングに用いられるライブラリはRequests、Beautiful Soup、Seleniumの3種類が主で、これらを組み合わせると高度なスクレイピングができます。

Seleniumを用いることでWebページ取得とデータ抽出の両方が利用できますが、Chromeで操作する際に別途ブラウザ専用のドライバのchromedriver.exeをネットからインストールする必要があります。しかし、このchromedriverはChromeのバージョン(例:103.0.5060.134)と同じバージョンをインストールせねばなりません。このような性質からChromeのバージョンが勝手に上がると急にchromedriverのエラーが出てしまい、再度適切なバージョンのchromedriver.exeをインストールしなければならず、非常に面倒です。

本記事ではwebdriver_managerを用いることで度々Cromeのバージョンを確認して同じバージョンのchromedriverをインストールする面倒な作業をなくすことができることがわかったので、その方法を簡単に紹介します。

 

1. 従来のchromedriverをインストールする方法

chromedriverをインストールする方法は以下の記事で確認していください。

chantastu.hatenablog.com

Pythonで記載する際は、一般的に以下のように記載します。(記載例)

 

2. webdriver managerを用いる方法

まずはpipでwebdriver_managerをインストールしてください。

次に、上記のコードを下記のようなコードに書き直すことで、上記の作業を行う必要がなくなります。これで自動的にchromeのバージョンを確認してくれるので、快適にWebスクレイピングをすることができます。

 

おまけ

このwebスクレイピングを活用したソフトを以下の記事で紹介しているので、興味のある方はぜひご覧ください!

chantastu.hatenablog.com

 

おわりに

本記事ではwebdriver_managerを用いることで度々Cromeのバージョンを確認して同じバージョンのchromedriverをインストールする面倒な作業をなくすことができることがわかったので、その方法を簡単に紹介しました。

機械学習においてデータ収集の作業量が大きいと言われています。その作業を効率よく実施することで、必要な分析結果の取得を時短化することができます。私自身もこの記事の内容を知ってからchromedrive.exeをアンインストールして面倒な作業をしなくなり、快適にWebスクレいピングすることができています。

本記事がWebスクレイピングを面倒な作業なく実施したい方の参考になれば幸いです。