作業用VMの準備
VirtualBoxにCentOS7をインストールして構築しています。
-
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