Python

WindowsでPython Selenium環境構築(venvを利用)

Python

以前の記事でWindowsでPython+Selenium+ChromeDriverでRPAを行うための環境を構築しました。

この時は、Hyper-V上のWindows10開発環境の仮想マシンを構築してインストールしていたのですが、今回はvenvを使って構築を試してみます。

venvを使うことで同じPC内に複数のPythonを使うプロジェクトがあった場合でも、それぞれ異なるPythonのバージョンを使用することができることや、pipなどで利用するライブラリを別々に構成することができます。

環境

・Windows10
・Python3.9
・Pycharm

必要なアプリのインストール

Pythonのインストール

Pythonのインストールについてはこちらの記事で紹介しています。

Chromeのインストール

当然ですが、Chromeのインストールも行います。

Google Chrome - Google の高速で安全なブラウザをダウンロード
新しい Google Chrome で毎日をもっと快適に。Google の最先端技術を搭載し、さらにシンプル、安全、高速になった Chrome をダウンロードしてご活用ください。

ChromeDriverのインストール

ChromeDriverのインストールについても「pip install chromedriver-binary」で行うことができます。

ここで注意となりますChromeDriverのバージョンをChrome本体のバージョンと合わせないと動作しません。

バージョンを指定しないでインストールしてしまうと差分が発生して動作しないということが多いのでバージョンを指定してインストールすることをお勧めします。

まずChromeのバージョンを確かめます。

Chromeのバージョンは84.xxxx系になっています。

なのでChromeDriverのページから84.xxx系に対応するChromeDriverのバージョンを確認します。

Downloads  |  ChromeDriver  |  Chrome for Developers

対応バージョンが84.0.4147.30であることが分かったら、バージョンを指定してChromeDriverをインストールします。

Pycharmのインストール

今回はIDEとしてPycharmを使ってvenv環境を構築します。

Pycharmをインストールして下さい。

プロジェクト作成(venv環境設定)

Seleniumのテストプロジェクト用としてフォルダを作成します。

C:\Project\selenium-test

作成したフォルダをPycharmで開きます。

venvの環境設定をする

フォルダをPycharmで開くと自動的にmain.pyが作成されます。

さらに、このプロジェクト実行されるPythonの環境が右下に表示されます。今回は「Python3.8(base)」が利用されるようになっています。

このPython3.8(base)はこのWindowsにインストールされている環境となるため、これとは異なる環境をvenvで構築します。

右下のPythonのバージョン部分をクリックして「Interupter Settings…」をクリックします。

右上の歯車マークから「Add」をクリックします。

「New environment」から新規でvenv環境を構築します。今回はPython3.9をベースとして作成したいと思います。

作成されるまで少しかかります。

venv環境が作成されると同じフォルダ内に「venv」フォルダが作成されます。また、右下の環境が「Python3.9(selenium-test)」と表示されており、Pathを見ると作成されたvenvフォルダを指していることが確認できます。

Selenium環境の構築

それではそのままSelenium環境を構築していきます。

必要モジュール類のインストール

プロジェクトで利用するモジュール類をインストールします。

seleniumで自動操作する際にChromeDriverを使うのですが、「webdriver-manager」をインストールして自動的にChromeのバージョンに応じたChromeDirverを取得するようにしています。かなり便利です。

あとはスクレイピングする際に使う「beautifulsoup4」とかをインストールしてます。

> pip install selenium
> pip install webdriver-manager

> pip install beautifulsoup4
> pip install lxml

サンプルスクリプト

とりあえず動作するサンプルスクリプトです。main.pyを少し修正しただけです。

amzonのトップページを開くだけです。

from time import sleep
from selenium import webdriver
from webdriver_manager.chrome import ChromeDriverManager

def selenium():
    driver = webdriver.Chrome(ChromeDriverManager().install())
    driver.get('https://www.amazon.co.jp/')
    sleep(3)
    driver.quit

def print_hi(name):
    print(f'Hi, {name}')  # Press Ctrl+F8 to toggle the breakpoint.

if __name__ == '__main__':
    print_hi('PyCharm')
    selenium()

Pythonのオススメ勉強方法

私がオススメするPython初心者向けの最初に購入すべき書籍は「シリコンバレー一流プログラマーが教える Pythonプロフェッショナル大全です。

シリコンバレー一流プログラマーが教える Pythonプロフェッショナル大全

この書籍は実際にシリコンバレーの一流エンジニアとして活躍している酒井潤さんが書いた本です。

内容も初心者から上級者までまとめられており、各Lessonも長すぎずに分かりやすくまとめられているので、初心者の方にもおすすめです。

シリコンバレー一流プログラマーが教える Pythonプロフェッショナル大全

今回は以上となります。

コメント