- 自分でコンテンツを作成する
- コンテンツを集めて加工する
- ユーザがコンテンツを提供するフラットフォームを提供
のどれかの手段を取る必要があるが、今回作成したキンドルセール情報の検索サイトは「2」なので、スクレイピングして情報を集めることにした。
結構この手段を使うひとはいると思うので、構築手順を書いておく。
スクレイピングサーバ構築手順
node.js install
sudo apt-get install nodejsruby install
apt install rbenv ruby-buildruby project deploy
git clone https://github.com/sstephenson/rbenv.git ~/.rbenv
git clone https://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build
sudo apt-get install -y autoconf bison build-essential libssl-dev libyaml-dev libreadline6-dev zlib1g-dev libncurses5-dev libffi-dev libgdbm3 libgdbm-dev ruby-dev libmysqlclient-dev
mkdir -p "$(rbenv root)/plugins"
git clone https://github.com/rkh/rbenv-update.git "$(rbenv root)/plugins/rbenv-update"
rbenv install 2.3.1
git clone xxxxxxxブラウザ動作環境を整える
sudo apt install ruby-bundler
bundle install
chromium install
sudo apt-get install chromium-browserchrome-driver install
sudo apt-get install xvfb
wget https://chromedriver.storage.googleapis.com/2.26/chromedriver_linux64.zip~/.bash.rcに追加
unzip chromedriver_linux64.zip
cp chromedriver ~/.rbenv/versions/2.3.1/bin
# rbenv
export PATH="$HOME/.rbenv/bin:$PATH"
eval "$(rbenv init -)"
nohup Xvfb :99 -ac -screen 0 1024x768x8 &
export DISPLAY=":99"
のちにAnsibleで書いて自動化する気持だけは強くもっている。
0 件のコメント:
コメントを投稿