🌐
【さくらレンタルサーバー】Pythonのseleniumで定期実行する
さくらレンタルサーバーでPythonのプログラムを定期実行することが可能です。
本記事ではさくらレンタルサーバーにPythonプログラムをデプロイ、定期実行までの設定を行う方法を解説します。
コマンドプロンプトでさくらサーバーにログイン
下記コマンドを実行
ssh [ユーザー名]@[IPアドレス]
パスワードの入力が求められるのでパスワードを入力
Python3.6.8をインストール
インストール
sudo yum install -y bzip2-devel
sudo yum install zlib-devel
sudo yum install epel-release
sudo yum install openssl11 openssl11-devel
Pythonのアーカイブファイルをダウンロード
ダウンロード用のフォルダ作成
mkdir -p ~/workspace/python3
カレントディレクトリを変更
cd ~/workspace/python3
Pythonのアーカイブファイルをダウンロード
wget --no-check-certificate https://www.python.org/ftp/python/3.6.8/Python-3.6.8.tgz
tgzファイルを解凍する
tar -zxvf ./Python-3.6.8.tgz
Python3.6.8をインストール
cd ./Python-3.6.8
./configure CPPFLAGS="-I/usr/local/ssl/include" LDFLAGS="-L/usr/local/ssl/lib" --prefix=$HOME/local/python
make
make install
.cshrcを編集してパスを通す
vi ~/.cshrc
編集するときは「i」、書き込み終了時は「escボタン」、編集終了時は「:wq」を入力
# 以下を追加
set path = ($path $HOME/local/python/bin)
setenv PYTHON $HOME/local/python/lib
setenv PYTHONPATH $HOME/local/python/lib/python3.6/site-packages
setenv LD_LIBRARY_PATH $HOME/local/python/lib
setenv CPPLAGS -I$(HOME)/opt/openssl/include
setenv LDFLAGS -L$(HOME)/opt/openssl/lib
bashからtcshに変更
setenvやrehashコマンドを使用するためにはtcshもしくはcshでなければ使用できないため以下のコマンドで変更する
tcsh
変更した設定を反映
source ~/.cshrc
rehash
バージョンを確認
環境変数PATHの設定が反映されていること、Pythonのバージョンを確認
which python3
which pip
python3 --version
pip3インストール
curl https://bootstrap.pypa.io/pip/3.6/get-pip.py -o get-pip.py
python3 get-pip.py --force-reinstall
作業用ディレクトリを削除
rm -r ~/workspace
ライブラリのインストール
個人的によく使用しているライブラリをインストールしています。
pip3 install selenium==3.141.0
pip3 install pandas
pip3 install tweepy
pip3 install beautifulsoup4
pip3 install oauth2client
pip3 install gspread
pip3 install pytz
pip3 install Pillow
Google Chromeのインストール
google-chrome.repoを作成
sudo vim /etc/yum.repos.d/google-chrome.repo
編集するときは「i」、書き込み終了時は「escボタン」、編集終了時は「:wq」を入力
[google-chrome]
name=google-chrome
baseurl=http://dl.google.com/linux/chrome/rpm/stable/x86_64
enabled=1
gpgcheck=1
gpgkey=https://dl.google.com/linux/linux_signing_key.pub
Google Chromeインストール
sudo yum -y install google-chrome-stable libOSMesa
インストールしたChromeのバージョン確認
google-chrome --version
chromedriverのインストール
必要なパッケージのインストール
sudo yum -y install libX11 GConf2 fontconfig
chromedriverのインストール
添付URLからGoogle Chromeのバージョンと一致するchromedriverのURL取得(Linux)
下記コマンドを実行してchromedriverをインストール(URLは上記で取得したURLに変更)
wget https://chromedriver.storage.googleapis.com/93.0.4577.63/chromedriver_linux64.zip
圧縮ファイルを解凍
unzip chromedriver_linux64.zip
chromedriverの使用権限を付与
sudo mv chromedriver /usr/local/bin/
chmod 755 /usr/local/bin/chromedriver
Python側でのchromedriverの宣言コード
options = webdriver.ChromeOptions()
options.add_argument('--headless')
options.add_argument('--no-sandbox')
options.add_argument('--disable-dev-shm-usage')
options.add_argument('window-size=1440,990')
driver = webdriver.Chrome(chrome_options=options)
さくらサーバーへファイルをデプロイ
下記コマンドを実行
scp [Pythonファイルのパス] [ユーザー名]@[IPアドレス]:/home/[ユーザー名]/
パスワードの入力が求められるのでパスワードを入力
定期実行設定
cron設定のvimを開く
crontab -e
3日に1回実行するように設定
* * */3 * * python3 [Pythonファイルパス]
これで設定した間隔でPythonのプログラムが動作するようになりました。
以上でさくらレンタルサーバーへのPythonプログラムのデプロイは完了です。
良かったら他の記事も見てください。
Discussion