1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Selenium(python3)環境構築

Posted at

作業用VMの準備

VirtualBoxにCentOS7をインストールして構築しています。

  • Oracle VM virtualBoxのインストール

  • CentOSのイメージファイルのダウンロード

    CentOS-7-x86_64-DVD-2009.isoというイメージファイルをダウンロードしました。

  • VirtualBoxで仮想マシンを作成

    名前:CentOS 7
    タイプ:Linux
    バージョン:Red Hat(64 bit)
    メモリーサイズ:1GB(1024MB)
    ハードドライブ:仮想ドライブを作成する
    ハードドライブのファイルタイプ:VDIファイルの可変サイズ
    物理ハードドライブにあるストレージ:可変サイズ
    ファイルの場所とサイズ:16GB
    起動ディスクの選択:CentOS-7-x86_64-DVD-2009.iso

  • 仮想マシンを起動し、CentOS7をデスクトップでインストール

    ソフトウェアの選択 [ベース環境]:GNOME Desktop
    開発リポジトリをつける [選択した環境のアドオン]:開発ツール
    インストール先:ATA VBOX HARDDISK
    ネットワークとホスト名:オンにする。
    ユーザーを作成する:ユーザー名とパスワードを設定する。

    [デバイス]-[Guest Additions CDイメージの挿入…]をクリックして[実行する]をクリックする。
    [デバイス]-[クリップボードの共有]-[双方向]にチェックを入れる。
    [デバイス]-[ドラッグ&ドロップ]-[双方向]にチェックを入れる。
    [VBox_GAs_6.1.18]アイコンを右クリックして[取り出す(E)]

  • CentOS7を再起動する。

作業環境の確認

rootユーザーになる。

[uchida@localhost ~]$ cat /etc/redhat-release 
CentOS Linux release 7.9.2009 (Core)
[uchida@localhost ~]$su -
パスワード:

ブラウザのインストール  

標準ではリポジトリが無いので、以下のviコマンドを実行し、追加する。

[root@localhost ~]# vi /etc/yum.repos.d/google.chrome.repo

[ i ]キーで入力モードに切り替えて以下の設定を貼り付け

[google-chrome]
name=google-chrome
baseurl=http://dl.google.com/linux/chrome/rpm/stable/$basearch
enabled=0
gpgcheck=1
gpgkey=https://dl-ssl.google.com/linux/linux_signing_key.pub

[ Esc ]キーでノーマルモードに切り替え後、[ :wq ]キーで保存して閉じる。

以下のyumコマンドを実行すると自動的にインストールされる。

[root@localhost ~]# yum --enablerepo=google-chrome -y update

GoogleChrome本体をインストール

インストール可能なGoogleChromeのバージョンを確認。

以下のyumコマンドを実行すると

[root@localhost ~]# yum --enablerepo=google-chrome list google-chrome*

chromeのバージョンが表示される。

読み込んだプラグイン:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * base: mirrors.cat.net
 * extras: mirrors.cat.net
 * updates: mirrors.cat.net                          
利用可能なパッケージ
google-chrome-beta.x86_64                              90.0.4430.72-1                           
google-chrome 
google-chrome-stable.x86_64                            90.0.4430.72-1                           
google-chrome 

以下のyumコマンドでchromeをインストール

[root@localhost ~]# yum --enablerepo=google-chrome -y install google-chrome

chromeが入っていることを確認する。

[root@localhost ~]# yum --enablerepo=google-chrome list google-chrome*

google-chrome-unstableがインストール済みになっていることがわかる。

Loading mirror speeds from cached hostfile
  * base: mirrors.cat.net
  * extras: mirrors.cat.net
  * updates: mirrors.cat.net
インストール済みパッケージ
google-chrome-unstable.x86_64                          91.0.4469.4-1                            
@google-chrome
利用可能なパッケージ
google-chrome-beta.x86_64                              90.0.4430.72-1                           
google-chrome 
google-chrome-stable.x86_64                            90.0.4430.72-1                           
google-chrome 

日本語フォントをインストール

[root@localhost ~]# yum -y install ipa-gothic-fonts ipa-mincho-fonts ipa-pgothic-fonts ipa-pmincho-fonts

GoogleChromeの起動確認のために、rootユーザーからログアウトする。

[root@localhost ~]# exit
ログアウト

GoogleChromeを起動させる。Chromeブラウザが表示されればOK

[uchida@localhost ~]$ google-chrome

Seleniumのインストール

rootユーザーになる。

[uchida@localhost ~]$ su -
パスワード:
最終ログイン: 2021/04/15 (木) 16:49:12 JST日時 pts/0

以下のyumコマンドでインストール可能なpythonを確認する。

[root@localhost ~]# yum list python*pip

python3-pipが利用可能であることがわかる。

読み込んだプラグイン:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* base: mirrors.cat.net
* extras: mirrors.cat.net
* updates: mirrors.cat.net
利用可能なパッケージ
python3-pip.noarch                                 9.0.3-8.el7                                 @base

python3をインストールする。

[root@localhost ~]# yum -y install python3-pip

python3をアップデートする ※2021年4/15現在では必要な手順です。

[root@localhost ~]# pip3 install --upgrade pip

Seleniumをインストールする。

[root@localhost ~]# pip install selenium

ChromeDriverのインストール

以下のpipコマンドを実行する。

[root@localhost ~]# pip install chromedriver-binary

インストールされたバージョンの確認。

[root@localhost ~]# pip show chromedriver-binary

バージョン90.0.4430のChromeDriverであることが確認できる。

Name: chromedriver-binary
Version: 90.0.4430.24.0
...

ChromeDriverのパスを通す

インストールされたパスの確認。

[root@localhost ~]# chromedriver-path

以下のパスが確認でるので、

/usr/local/lib/python3.6/site-packages/chromedriver_binary

コピーしてbin直下に張り付ける。

[root@localhost ~]# cp /usr/local/lib/python3.6/site-packages/chromedriver_binary/chromedriver /usr/local/bin/chromedriver

ファイルモードを変更し、実行権限を与える。

[root@localhost ~]# chmod +x /usr/local/bin/chromedriver

動作確認

一般ユーザーで動作確認する。

[root@localhost ~]# exit
ログアウト
[uchida@localhost ~]$ chromedriver -v
ChromeDriver 90.0.4430.24 (4c6d850f087da467d926e8eddb76550aed655991-refs/branch-heads/4430@{#429})

python3を実行する。

[uchida@localhost ~]$ python3

入力モードになるので、以下を実行する。

from selenium import webdriver

options = webdriver.ChromeOptions()
#options.add_argument('--headless') # コメントアウトすることでブラウザ表示
options.add_argument('--no-sandbox')
driver = webdriver.Chrome(options=options)

driver.get('https://www.google.co.jp/') #Enterボタンを実行すればGoogle画面が立ち上がる。

Google画面が立ち上がればOK

対話画面から抜けるのは[Ctrl]+[D]を押下。

(補足)pythonコマンドでpython3を起動させる設定

現在のversionでは、pythonコマンドを実行すると、python2が起動してしまうので

[uchida@localhost ~]$ python --version
Python 2.7.5
[uchida@localhost ~]$ python3 --version
Python 3.6.8

いったんrootユーザーになり、以下のalternativesコマンドで複数のバージョンを共存できるようにする。

[uchida@localhost ~]$ su -
パスワード:
最終ログイン: 2021/04/15 (木) 18:02:46 JST日時 pts/0
[root@localhost ~]# update-alternatives --install /bin/python python /bin/python3.6 1
[root@localhost ~]# update-alternatives --install /bin/python python /bin/python2.7 2

設定を変更するために、以下のコマンドを実行後、1を選択する。

[root@localhost ~]# alternatives --config python

2 プログラムがあり 'python' を提供します。

  選択       コマンド
-----------------------------------------------
 + 1           /bin/python3.6
*  2           /bin/python2.7

Enter を押して現在の選択 [+] を保持するか、選択番号を入力します:1

現在の状態を確認後、pythonコマンドでバージョンを確認する。

[root@localhost ~]# alternatives --list | grep python
python	manual	/bin/python3.6
[root@localhost ~]# python --version
Python 3.6.8

再度動作確認を行い、Google画面が表示されればOK

[root@localhost ~]# exit
ログアウト
[uchida@localhost ~]$ python

from selenium import webdriver

options = webdriver.ChromeOptions()
#options.add_argument('--headless') # コメントアウトすることでブラウザ表示
options.add_argument('--no-sandbox')
driver = webdriver.Chrome(options=options)

driver.get('https://www.google.co.jp/') #Enterボタンを実行すればGoogle画面が立ち上がる。

対話画面から抜けるのは[Ctrl]+[D]を押下。

(補足)yumコマンドを使えるように修正する

viコマンドを実行する。

[root@localhost ~]# vi /usr/bin/yum

一番上の部分に2をつける。

(変更前)
#!/usr/bin/python
(変更後)
#!/usr/bin/python2

同様の処理を以下でも行う。

[root@localhost ~]# vi /usr/libexec/urlgrabber-ext-down

一番上の部分に2をつける。

(変更前)
#!/usr/bin/python
(変更後)
#!/usr/bin/python2

 

1
0
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?