げっちゅ屋の発売日リストページをスクレイピングしてその内容をコマンドで確認することができます。
「今月はどんなゲームが発売されるのか?」、「推しの声優が出演しているゲームが発売されるのか?」、「大好きなあのメーカーは今月ゲームを発売するのか?」などの要望に答えることができるコマンドラインツールです。
スクレイピングは時間がかかるものです。
このコマンドラインツールにはキャッシュ機能が盛り込まれています。
年月単位で以前実行されたコマンドの結果をキャッシュし2回目に実行する時はそのキャッシュから読み込むので高速にコマンドの結果を確認することができます。
$ git clone https://github.com/dodonki1223/eroge_release_cmd.git
$ cd eroge_release_cmd
$ bundle install
Googleスプレッドシートに書き込みをする機能を使用する場合は下記の手順が必要です。
※google-drive-rubyを使用しているためgoogle-drive-rubyの設定が必要です
- google-drive-rubyを使用できるようにする
- 書き込みを行なうGoogleスプレッドシートのIDを設定する
1. google-drive-rubyを使用できるようにする
google-drive-rubyの認証手順の通りに[On behalf of you (command line authorization)](On behalf of you (command line authorization))の8まで進めて下さい
client_id、client_secretがわかったらメモして下さい
# サンプルファイルからgoogle-drive-rubyの設定ファイルを作成して下さい
cp eroge_release/spreadsheet/google_drive_config_sample.json eroge_release/spreadsheet/google_drive_config.json
下記のclient_idとclient_secretにメモした内容を入力してください
{
"client_id": "xxxxxxxxxxxx-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.apps.googleusercontent.com",
"client_secret": "xxxxxxxxxxxxxxxxxxxxxxxx"
}
これ以降の設定は不要です
GoogleDriveにスプレッドシートを作成しそのURLを確認して下さい
例:
https://docs.google.com/spreadsheets/u/1/d/xxxxxxxxxxxxxxxxxxxxxxx/edit?usp=drive_web&ouid=107294483781638928010
xxxxxxxxxxxxxxxxxxxxxxx
の部分がGoogleスプレッドシートのIDになります
# サンプルファイルからGoogleスプレッドシートのの設定ファイルを作成して下さい
cp eroge_release/spreadsheet/spreadsheet_sample.conf eroge_release/spreadsheet/spreadsheet.conf
下記コードのYour Sheet Id
の部分にGoogleスプレッドシートのID
を入力して下さい
# 書き込み用GoogleスプレッドシートID設定
[GoogleSpreadSheet]
id = Your Sheet ID
下記コマンドを実行します
$ bundle exec getchuya -c -s
実行すると、下記のようなことを聞かれます
1. Open this page:
2. Enter the authorization code shown in the page:
聞かれたら1. Open this page:
にかかれているURLにアクセスし、画面の通りにするめるとこのコードをコピーし、アプリケーションに切り替えて貼り付けてください。
と言われるページまで遷移したらコードをコピーする
2. Enter the authorization code shown in the page:
のところにコピーしたコードを貼り付けてEnterを押すことでGoogleスプレッドシートへの書き込みが可能になります
下記コマンドで今月の発売リストの情報を表示します
$ bundle exec getchuya
オプションは以下の通りです
Usage: getchuya [options]
-h, --help Show this help
--robots Display contents of robots.txt
-y, --year_month [YEAR_MONTH] Set Target Year And Month
-v, --voice_actor [VOICE_ACTOR] Narrow down by voice actor name
-t, --title [TITLE] Filter by title
-b, --brand_name [BRAND_NAME] Narrow down by brand_name
-o, --open [OPEN] Open game page in browser
-c, --csv [CSV] Create a csv file
-j, --json [JSON] Create a json file
-s, --spreadsheet [SPREADSHEET] Write to spreadsheet from CSV
--open_spreadsheet [OPEN_SPREADSHEET]
Open spreadsheet page in browser
--clear_cache [CLEAR_CACHE] Clear the cache
--simple [SIMPLE] Display results in a simplified way
対象の年月の発売リストを確認する
# 2017年5月の発売リストを確認します
$ bundle exec getchuya -y 201705
推しの声優が出演しているか確認する
# 遥そらさんと風音さんが出演しているゲームの一覧を表示します
$ bundle exec getchuya -v 遥そら,風音
特定のブランドがゲームを発売するか確認する
# SAGA PLANETSのゲームが発売するか確認する
$ bundle exec getchuya -b SAGA PLANETS
検索結果に表示されたゲームの情報をブラウザで確認する ※げっちゅ屋のゲーム紹介ページを表示する
# 遥そらさんと風音さんが出演しているゲームの一覧をブラウザで確認する
$ bundle exec getchuya -v 遥そら,風音 -o
検索結果の内容でjsonファイル、csvファイルを作成する
# jsonファイルを作成する
$ bundle exec getchuya -j
# CSVファイルを作成する
$ bundle exec getchuya -c
Googleスプレッドシートに検索結果の内容を書き込む ※GoogleスプレッドシートへはCSVファイルを元に書き込むのでCSVファイルが無いと書き込めません
# 検索結果の内容をGoogleスプレッドシートに書き込む
$ bundle exec getchuya -c -s
キャッシュをクリアする
# 2018年5月のキャッシュをクリアする
$ bundle exec getchuya -y 201805 --clear_cache
Macでのみ動作確認をしています。Windowsだと動くかわかりません。
rubyのバージョンは2.3.7
で確認しています。
恐らく2.3.7
以上なら動作すると思います……。