Django Girls and Boys 備忘録

Python、Selenium、Django、java、iPhoneアプリ、Excelマクロなどで気付いたこと、覚えておきたいことなどを載せていきます。

【Python Selenium(初心者向け)】PythonのインストールからWebサイトへのアクセスまで含めた簡単なスクレイピングを行うための一通りの手順

 

Pythonは比較的初心者にも取り組みやすい言語で手軽に実行できるなどはじめてのプログラミング言語としても適した言語だと思います。

 

 

機械学習人工知能、Webアプリケーション作成やスクレイピングなど幅広く使われており注目のプログラミング言語でもあるPythonを使用していくためにはまずはじめに必要となるものをダウンロード、インストールしていく必要があります。

 

 

ここでは、これからPythonを使用してスクレイピングを行うために必要となることとして、Pythonのダウンロード、インストールからはじめてスクレイピング用のライブラリであるSeleniumやおすすめのエディターのインストールなどを通して、最終的にはGoogle検索画面でのキー入力による自動検索実行などの一通りの手順を順を追って説明していきたいと思います。 

 

 

以下の目次にて記載している内容がこれから説明していく内容となります。

必要なものがその中の一部であればそこだけ読んでもらっても構わないと思います。

 

 

 

また、Pythonに関して初心者、初級者におすすめの入門書は以下となります。

もしよければご参照ください。

 

 

kuku81kuku81.hatenablog.com

 

 

それでは一通りの手順の説明になります。

 

 

 

目次

 

はじめにやらなければならないのは、一通り実行していくために必要なもののダウンロードとインストールです。

使用するものはPythonということになりますので、まずはPython のダウンロードとインストールからになります

 

 

1.Pythonのダウンロードとインストール

 

1.1.Pythonのダウンロード

まずはじめに、Python のダウンロードを行います。

以下のURL

https://www.python.org/

へアクセスします。

Pythonのダウンロード画面が表示されます。

 

Pythonダウンロード画面

Pythonダウンロード画面(Downloads選択)

 

画面内の「Downloads」にマウスを合わせ、表示されたメニューの中から

  「 Windows

をクリックします

MACの場合は「macOS」選択となります)。

 

Pythonダウンロード画面(OS選択)

Pythonダウンロード画面(OS選択)

 

過去から最新までのバージョンのWindows 向けの Python のダウンロード用リンクが掲載されたページが表示されます。

最新バージョンのPythonをダウンロードしますので、

  「Latest Python 3 Release - Python 3.10.2」

をクリックします

(3.10.2の箇所はその時の最新のバージョンのものを選んでください)。

 

Pythonダウンロード画面(最新バージョン選択)

Pythonダウンロード画面(最新バージョン選択)

 

Python 3.10.2 のダウンロードファイル選択用の画面が表示されます。

 

画面内一番下の方にFilesと表示された OS 毎に表示されているダウンロード用のファイル一覧が表示されます。

いろいろと種類はありますが、 Windows10 (64bit) 向けのインストーラー付き

のものであれば、

  「Windows installer (64-bit)

と書かれたリンクをクリックしてダウンロードしてください。

Windows10 (32bit)向けのインストーラー付きのものであれば、

   「Windows installer (32-bit)

と書かれたリンクをクリックしてダウンロードしてください。

 

ダウンロードが開始されます。

必要ファイルのダウンロードについては以上で終了です。

 

Pythonダウンロード画面(ファイル選択)

Pythonダウンロード画面(ファイル選択)

1.2.Pythonのインストール

 
次に、ダウンロードしたPythonファイルをインストールします。
 
ダウンロードしたPythonファイルをダブルクリックすると、以下のようなインストール用画面が表示されます。
 
自動的にPath設定してもらうようにした方がいいと思いますので、
  「Add Python 3.10 to PATH」
をクリックしておいてください。
3.10の部分はバージョンによって表示が変わります。
 
デフォルトで指定されているインストール先へのインストールでいいようであれば、
  「Install Now」
をクリックします。
この場合は、このクリック後に、このページ最後のインストール完了画面が出ればインストールは完了となります。
 
今回は、設定を一部変更したかったので、
  「Customize installation」
をクリックすることにします。
 

Pythonインストール初期画面

Pythonインストール初期画面

 

次に、オプション機能選択画面(Optional Features)が表示されます。

インストールから外したい項目があればチェックをはずします。

問題なければ「Next」をクリックします。

 

Pythonインストール画面(オプション機能選択)

Pythonインストール画面(オプション機能選択)

 続いて、高度なオプション機能選択画面(Advanced Options)が表示されます。

 

ここで、一番上の「Install for all users」にチェックをつけることにします。

Windowsにログインする可能性があるすべてのユーザーで使用できるようにしたかったためです。

現在Windowsにログインしているユーザーのみしか使用しないようであればそのまま何もチェックしないで構わないです。

 

インストール先などに問題なければ「Install」をクリックします。

 

 

Pythonインストール画面(高度なオプション機能選択)

Pythonインストール画面(高度なオプション機能選択)
インストールが開始されます。その後、しばらくして次の画面が出ればインストール完了です。
「Close」をクリックすればインストールは完了です。
 
以上で、Pythonのダウンロードとインストールは完了となります。
 

Pythonインストール完了画面

Pythonインストール完了画面

 

2.Visual Studio Codeのダウンロードとインストール

 

もう1つ必要となってくるのは、プログラムのコーディングを行う時に必要なものであるコードエディターです。

今回使用しようとしているものは、無料のものとしては、かなり機能的に充実しているエディターとして、マイクロソフトが提供しているコードエディターVisual Studio Codeになります。

単にコーディングするだけでなく、デバッグ機能などが非常に充実しています。

そこで、このVisual Studio Codeのダウンロードとインストールを行っていきます。

 

2.1.Visual Studio Codeのダウンロード

 

まずは、Visual Studio Codeのダウンロードからです。

以下のサイトにアクセスします。

 

https://code.visualstudio.com/

 

Visual Studio Codeのダウンロードサイト

Visual Studio Codeダウンロードサイト

画面左側のダウンロードボタン(Download for Windows)をクリックしてください。
Macの場合は、プルダウンメニューから Mac OSで種類を選択してクリックになります。

 

現在のダウンロードVer.は、1.64.2.0でした。

 

クリックすると、以下のような画面が表示されてダウンロードされます。

 

Visual Studio Codeのダウンロード完了画面

Visual Studio Codeのダウンロード完了画面

ダウンロードは以上で完了です。

 

2.2.Visual Studio Codeのインストール

 

ダウンロードが完了したらインストールになります。

 

ダウンロードしたファイルをダブルクックしてください。

ダブルクリックすると、インストーラが起動して以下のウインドウ画面が表示されます。

内容を確認して問題なければ「同意する」を選択して「次へ」をクリックしてます。

 

VisualStudioCodeインストール画面

VisualStudioCodeインストール画面

続いて、追加タスクの選択画面が表示されます。

初期状態では、「PATHへの追加」のみが選択されています。

問題なければそのまま「次へ」をクリックします。

 

VisualStudioCodeインストール追加タスク選択画面

VisualStudioCodeインストール追加タスク選択画面

最後にインストール準備完了画面が表示されます。

確認して「インストール」をクリックしてインストールを開始します。

VisualStudioCodeインストール準備完了画面

VisualStudioCodeインストール準備完了画面

 

完了したら完了画面が表示されますので「完了」をクリックするとインストール完了です。

中央の「VisualStudioCodeを実行する」にチェックが入っているとVisualStudioCodeが起動します。

 

VisualStudioCodeインストール完了画面

VisualStudioCodeインストール完了画面

 

 

3.Visual Studio Codeの画面表示の日本語化

 

 

Visual Studio Codeのダウンロードとインストールが終了したら次に行うのは画面表示の日本語化になります。

これが必要ない場合には飛ばしてもらって構いません。

 

それでは、日本語化について順に説明していきます。

 

3.1.日本語化拡張機能のインストール

 

Visual Studio Codeの初期画面としては、以下のようになっていると思います。

このようにVisual Studio Codeをインストールした当初は表記が英語表示になっていると思います。これを日本語表示にするための方法を記載していきます。

 

Visual Studio Code初期画面

Visual Studio Code初期画面

まずは、日本語化するための拡張機能をインストールします。

 

画面上部のメニューバーの「View」をクリックし、その中の「Command Palette…」を選択します。

 

【Visual Studio Code言語切替】View→Command Paletteの選択

Visual Studio Code言語切替】View→Command Paletteの選択

 

Command Paletteのキー入力エリアが表示されたら、そこに、「display」と打ち込みます(「」は打ち込まなくていいです)。

 

そうすると、その下に以下のように「Configure Display Language」と表示されますのでそれをクリックします。

この中の「Configure Display Language」を選択します。

 

【Visual Studio Code】display入力→Configure Display Language選択

Visual Studio Code】display入力→Configure Display Language選択

 

表示言語の選択状態となります。

元々インストール当初は、英語を表すenだけだと思います。

(以下の画面例は、すでに日本語化拡張機能が入っているPCのため日本語のjaも表示されています)

ここで新たに言語を追加する場合には一番下の「Install additional languages」を選択します。

 

【Visual Studio Code言語切替】表記言語選択

Visual Studio Code言語切替】表記言語選択

 

そうすると、以下のように新たにインストールする言語の拡張機能一覧が表示されます。

ここで、「Japanese Language Pack for Visual Studio Code」の中の「install」をクリックします。

 

【Visual Studio Code】日本語化拡張機能選択

Visual Studio Code】日本語化拡張機能選択

 

以下のように表示された日本語化用のインストール画面で画面上部の「install」をクリックします(以下の画面ではすでにインストール済のため「uninstall」と表示されていますがここが「install」と表示されているはずです)。

 

【Visual Studio Code】日本語化拡張機能インストール画面

Visual Studio Code】日本語化拡張機能インストール画面

 

そうすると、インストールが完了します。

 

3.2.再起動により日本語化

 

ここまでくればあとは、以下の画面のように右下に表示された「Changed Language and Restart」をクリックすることでVisual Studio Codeが再起動され、立ち上がりなおした後には日本語化されていると思います。

 

【Visual Studio Code】日本語化拡張機能言語変更再起動選択画面

Visual Studio Code】日本語化拡張機能言語変更再起動選択画面

 

 

4.Python拡張機能のインストール

 

Visual Studio CodePythonをコーディング、デバッグなどを行う場合にはPython拡張機能をインストールする必要があります。

そのためこのインストール手順を説明していきます。

 

日本語化したVisual Studio Codeの初期画面としては、以下のようになっていると思います。

 

【Visual Studio Code】初期画面

Visual Studio Code】初期画面

 

 

拡張機能をインストールするためには、まず、画面上部のメニューバーの「表示」をクリックし、その中の「拡張機能」を選択します。

 

【Visual Studio Code】表示→拡張機能選択

Visual Studio Code】表示→拡張機能選択

 

拡張機能が画面左側に表示されたら、その中の上部の検索ボックス(「MarketPlaceで拡張機能を検索する」と表記してある箇所)に「Python」と打ち込みます。

 

絞り込んだ拡張機能の中の「Python」(通常は一覧の先頭に表示、項目の先頭にintelliSense(Pylance)と表示されている項目)の「インストール」ボタンをクリックします。

 

【Visual Studio Code】拡張機能一覧表示画面(Python入力)

Visual Studio Code拡張機能一覧表示画面(Python入力)

 

これによりPython拡張機能がインストールされます。

完了すると、以下のように先程クリックしたインストールボタンが設定アイコンになり、メインパネルに「無効にする」と「アンインストール」ボタンが表示されます。

 

これにより、Python拡張機能のインストールが完了したことがわかります。

 

【Visual Studio Code】Python拡張機能インストール完了画面

Visual Studio CodePython拡張機能インストール完了画面

 

 

5.Seleniumのインストール

 

 

続いて、PythonからWebサイトにアクセスして情報を読み取ったり、ダウンロードしたいという時に必要なseleniumのインストール方法を記載します。

 

 

 

5.1.seleniumとは

 

seleniumは、PythonなどからWebサイトにアクセスする時に必要なもので、PythonからのアクセスをWebサイトへつなぐ外部ライブラリです。

また、これだけでは実際にはアクセスできず、もう1つWebドライバというものが必要となります。

 

結果として、

Python-Webドライバ-seleniumWebブラウザという流れでPythonからWebブラウザを操作します。

 

5.2.インストール手順

 

これは、WindowsではコマンドプロンプトMacではターミナルから行います。

 
まず、コマンドプロンプトを開きます(Macの場合はターミナル)。
以下のコマンドを入力します。

 

seleniumは、pipというコマンドでインストールしますが、まずは、pipコマンドの最新Ver.へのアップグレード方法です。

以下のコマンドでアップグレードできます(MACではpython→python3)。

 

python -m pip install --upgrade pip

 

Macでは

 

python3 -m pip install --upgrade pip

 

それでは、seleniumのインストールになります。

Windowsの場合、コマンドプロンプトMacの場合、ターミナルから以下のコマンドでインストールできます。

 

pip install selenium

 

Macでは

 

python3 -m pip install selenium

 

これはすぐに終わります。

終了後、念のため、インストールされたかどうかの確認をしておきます。

 

pip list

 

Macでは

 

python3 -m pip list

 

これにて、これまでpipにてインストールされたライブラリなどがリスト表示されます。

 

Package          Version
---------------- ---------
openpyxl         3.0.9
selenium         4.1.2
setuptools       58.1.0
urllib3          1.26.8

 

以上のように、表示リストの中にseleniumが表示されていればインストールは完了です。

 

 

 

6.Webドライバーのダウンロード

 

 

実際にseleniumを使用してブラウザ操作をする場合に必要になるものとしては、

seleniumともう1つ、使用するブラウザのドライバーがあります。

 

ブラウザのドライバーはEdge用、Chrome用などがあり、また、EdgeのI.E.モードで操作する場合には、I.E.用のドライバーもインストールしなければなりません。

 

このブラウザのドライバー自体は、ブラウザのバージョンがあがるとそれにあわせて更新していかなければならないということなので常に更新をチェックしている必要があります。

 

現在のselenium、ブラウザのドライバーなどの最新バージョン確認、ダウンロード場所はそれぞれ以下のような場所になります。

 

 

6.1.ダウンロード、最新バージョン確認場所

 

(1)selenium 

https://www.selenium.dev/downloads/

この中の下部のSelenium Clients and WebDriver Language Bindingsに各言語用のものがあるため、言語に合わせて選択、確認、ダウンロードします。 

 

(2)各ブラウザー用ドライバー

msedgedriver

https://developer.microsoft.com/ja-jp/microsoft-edge/tools/webdriver/

Microsoft作成のドライバーですが、バージョンの先頭の100,101,102などの数値が現在使用しているブラウザのバージョンと同じものをダウンロード使用していなければならないようです。

 

chromedriver

https://chromedriver.storage.googleapis.com/index.html

Google作成ドライバー

 

ieserverdriver

https://www.selenium.dev/downloads/

この中のThe Internet Explorer Driver Server用の32ビット版(現状はこちらが推奨となっている)か64ビット版を選択してダウンロードすることになると思います。

 

 

 

 

 

6.2.ブラウザ用ドライバーのダウンロード

 

 

今回のダウンロード手順の具体的な例としてはEdgeのものを載せています。

 

まずはじめにブラウザのドライバーのダウンロード場所に移動します。

 

Edge用ドライバダウンロードURL:

https://developer.microsoft.com/ja-jp/microsoft-edge/tools/webdriver/

 

実際のダウンロード用の画面は以下のようです。

 

あらかじめ、使用するPCにてEdgeのバージョンを確認しておき、このダウンロード画面から確認しておいたバージョンと同じバージョンのドライバーをダウンロードします。

 

 

通常の場合はその中の「x64」を選択(クリック)してダウンロードします。

 

Edgeドライバーダウンロードサイト

Edgeドライバーダウンロードサイト

 

ちなみにダウンロードするドライバーのバージョンとしては、はじめの数値(以下の画面の例では100,101,102など)が最低限同じものを選択しなければなりません。

 

実際に使用しているブラウザのバージョンとこの数値が異なるバージョンのものを使用すると実行時にエラーが発生します。

(実際には1つ違いあたりでは発生しない場合もあります)

 

 

6.3.ブラウザ用ドライバーのインストール

 

 

ダウンロードすることで、自PC内の「ダウンロード」フォルダに入れられたと思いますので、その中の「msdriver.exe」をコピーして、実際に使用するプロジェクトのフォルダ(コードエディタで開くときの指定フォルダなど)にペーストします。

 

これでブラウザのドライバーのダウンロードとインストール(コピー)は完了です。

 

 

ちなみにEdgeを含めて各ブラウザ用のドライバのダウンロード場所は、以下のような過去記事に記載しています。

他のブラウザの場合はこれらを参考にして同様に行ってみてください。

 

kuku81kuku81.hatenablog.com

 

 

 

 

 

 

 

 

 

7.Seleniumを使用したWebサイトへのアクセス方法

 

ここまでで一通り必要なもののダウンロードとインストールは完了しました。

そこで、これらを使用して、PythonSelenium側からWebサイトへのアクセス方法を具体例をつけて説明していきたいと思います。

 

Webサイトへアクセスする場合ですが、必要なブラウザのドライバーを設定し対象となるWebサイトのURLを指定してのアクセスとなります。

 

以下は簡単な例となりますが、Edgeを使用した場合の例となります。

 

from selenium import webdriver
import os
from selenium.webdriver.chrome import service as fs
from selenium.webdriver.common.by import By
from selenium.webdriver.common.keys import Keys

path_driver = os.getcwd()+'\msedgedriver.exe'
# ドライバー指定でEdgeブラウザを開く
edge_service = fs.Service(executable_path=path_driver)
driver = webdriver.Edge(service=edge_service)
driver.get('https://www.google.com/')

#検索ボックス(nameが"q")を探索
element = driver.find_element(By.NAME, "q")
#検索テキストボックスに"abc"を入力
element.send_keys("abc")
element.send_keys(Keys.ENTER)

 

 

5行目までは必要なライブラリのインポート文です。

 

7行目の、os.getcwd()はカレントディレクトリを表しています。

 

通常、最近はVisualStudioCodeで作業していますが、VSCなどのコードエディターで開いた時などは指定したルートのディレクトリがそれに相当すると思います。

 

カレントディレクトリについては以下の過去記事でも記載しています。

 

kuku81kuku81.hatenablog.com

 

あらかじめ、そのディレクトリにEdge用ドライバー(msedgedriver.exe)を入れておきます。

 

7行目により、path_driverに、msedgedriver.exeのpathが入ります。

このパスを指定して、9、10行目でdriverの設定をしています。

 

このdriverを使用して11行目でdriver.getの後にオープンしたいURLを指定することで指定したWebサイトを開くことができます。

 

ここまでを実行すると、Google検索の画面が表示されると思います。

 

14、16行目で検索ボックスを探索して変数elementに代入し、そのelementにsend_keysで検索キーワード"abc"を渡すことで結果として"abc"が検索ボックスに入ります。

 17行目でEnter入力して検索が実行されます。

 

 

 

以上はEdgeの場合の例になりますが、Chromeの場合の例は以下になります。

7、9、10行目が多少変わっている程度です。

 

from selenium import webdriver
import os
from selenium.webdriver.chrome import service as fs
from selenium.webdriver.common.by import By
from selenium.webdriver.common.keys import Keys

path_driver = os.getcwd()+'\chromedriver.exe'
# ドライバー指定でChromeブラウザを開く
chrome_service = fs.Service(executable_path=path_driver)
driver = webdriver.Chrome(service=chrome_service)
driver.get('https://www.google.com/')

#検索ボックス(nameが"q")を探索
element = driver.find_element(By.NAME, "q")
#検索テキストボックスに"abc"を入力
element.send_keys("abc")
element.send_keys(Keys.ENTER)

 

 

 これらにより、PythonからSeleniumを使用してWebサイトへアクセスすることができることになります。

今回説明のために挙げたのは簡単な例となりますが、プログラムの内容を変更することで種々のデータなどの読み込み、書き込みができることになります。

 

 

また一般的な話として、Webサイトにアクセスする場合には、各サイトの利用規約を確認した上での実施が必要となります。

 

サイトごとにアクセスするためのAPIが用意されているような場合にはそれらを利用してアクセスしたほうがいいと思います。

 

 

 

また、PythonにてSeleniumを活用してスクレイピング、RPA化などを行っていく場合に必要となりそうな内容の記事を一覧として以下にまとめましたのでよかったらご参照ください。

 

 

kuku81kuku81.hatenablog.com

 

 

 

 

関連記事:

【Python】おすすめ学習本ランキング8選 - Django Girls and Boys 備忘録

 

【Python】キーボード、キー入力判定方法 - Django Girls and Boys 備忘録

 

【Python】keyboardライブラリでのキー入力検出に使用可能なキーの種類 - Django Girls and Boys 備忘録

 

【Python】Python、Selenium関連情報一覧(ダウンロード、インストール手順、各種やり方、使い方など) - Django Girls and Boys 備忘録

 

【Python Selenium(初心者向け)】PythonのインストールからWebサイトへのアクセスまで含めた簡単なスクレイピングを行うための一通りの手順 - Django Girls and Boys 備忘録

 

【Python】pipのバージョン確認、インストールとアップデート方法 - Django Girls and Boys 備忘録

 

【Python Selenium】各ブラウザ用のドライバーを自動アップデートする方法 - Django Girls and Boys 備忘録

 

【PythonからWeb操作】seleniumのインストール手順 - Django Girls and Boys 備忘録

 

【PythonによるExcelファイルの読み書き】PythonのダウンロードからExcelファイルの読み書きまでの一通りすべての方法 - Django Girls and Boys 備忘録

 

【Python Selenium】ウインドウ表示時などでのWaitの方法、待機方法 - Django Girls and Boys 備忘録