毎晩、被チェック数が増えているかな?とページをアクセスして覗いていましたが、自動化の話を見かけたので自分もチャレンジしました。前記事の続きとなりますが、ようやく動く物ができたので共有します。自分は今これをつかって確認しています。
被サークルチェック数チェッカー
Selenium とヘッドレス Chrome で技術書典の被サークルチェック数を取り出すものを書いてみました。
最初は操作を確認しつつ、うまくいってからヘッドレス化してという作業手順でやっていました。このとき、ヘッドレス化してエラーが出た場合には進行状況を見るのにヘッドレス Chrome の画面を撮影してデバッグしていました。
基本的には、Google cloud function で動くチェックツールを公開されている方のコードを参考にして各テキストやボタンの操作をしていきました。
自分の場合には Microsoft Teams を普段のチャットツールとして使っていることもあり、チェック数をメール経由でチャットの方に通知するようにしています。
必要なものはメールサーバーがありますが、これは各自のメールサーバーを使えばいいと思います。 SMTP の STARTTLS 方式にもこのスクリプトは対応できています。
基本的には、ここまでと書かれた内容で各自の状況に合わせて変更してもらえればよいかなと思います。
定期ループ化
結局、自分のローカルPCでタスクスケジューラに登録して定期タスク化しています。
なのでしばらくは電源を入れっぱなしで処理を回していきます。どこかのクラウドVMで動かすにはちょっと勿体ないですし、そこら辺に転がっているラズパイで cron 設定するというのもひとつの手ですね。
おまけ
Google のスプレッドシートも使ってそちらにも記録していくと、被チェック数の推移を知ることができて面白いかと思います。
手元のスクリプトではこの改造もやりつつなのですが、gist に公開するまでは至っておらず。そのうち整えて次回の書典には公開できるようにしておきたいところですね。
最初は GAS (Google Apps Script) で全て処理できるんじゃないかと思っていたのですが無理でした。
GAS で技術書典のページにログインして、被チェック数を得ることが出来た人、是非教えて下さい。
参考
今回のことでいくつかのサイトの情報を参考にして実装しました。
まとめ
今回初めてこういったツールを準備してみました。Selenium を使って、操作するのも実は初めてなので、このスクリプトにまずい点があるかもしれませんし、もっといい方法があるかもしれません。こうするとよいよ、とアドバイスがもらえたら嬉しく思います。
それはそれとして、新しいものにチャレンジするって大変ですがワクワクしますね。