日記一覧

技術書典用 被サークルチェック数チェッカー

毎晩、被チェック数が増えているかな?とページをアクセスして覗いていましたが、自動化の話を見かけたので自分もチャレンジしました。前記事の続きとなりますが、ようやく動く物ができたので共有します。自分は今これをつかって確認しています。

被サークルチェック数チェッカー

Selenium とヘッドレス Chrome で技術書典の被サークルチェック数を取り出すものを書いてみました。

最初は操作を確認しつつ、うまくいってからヘッドレス化してという作業手順でやっていました。このとき、ヘッドレス化してエラーが出た場合には進行状況を見るのにヘッドレス Chrome の画面を撮影してデバッグしていました。
基本的には、Google cloud function で動くチェックツールを公開されている方のコードを参考にして各テキストやボタンの操作をしていきました。

自分の場合には Microsoft Teams を普段のチャットツールとして使っていることもあり、チェック数をメール経由でチャットの方に通知するようにしています。
必要なものはメールサーバーがありますが、これは各自のメールサーバーを使えばいいと思います。 SMTP の STARTTLS 方式にもこのスクリプトは対応できています。

基本的には、ここまでと書かれた内容で各自の状況に合わせて変更してもらえればよいかなと思います。

定期ループ化

結局、自分のローカルPCでタスクスケジューラに登録して定期タスク化しています。
なのでしばらくは電源を入れっぱなしで処理を回していきます。どこかのクラウドVMで動かすにはちょっと勿体ないですし、そこら辺に転がっているラズパイで cron 設定するというのもひとつの手ですね。

おまけ

Google のスプレッドシートも使ってそちらにも記録していくと、被チェック数の推移を知ることができて面白いかと思います。
手元のスクリプトではこの改造もやりつつなのですが、gist に公開するまでは至っておらず。そのうち整えて次回の書典には公開できるようにしておきたいところですね。

最初は GAS (Google Apps Script) で全て処理できるんじゃないかと思っていたのですが無理でした。
GAS で技術書典のページにログインして、被チェック数を得ることが出来た人、是非教えて下さい。

参考

今回のことでいくつかのサイトの情報を参考にして実装しました。

まとめ

今回初めてこういったツールを準備してみました。Selenium を使って、操作するのも実は初めてなので、このスクリプトにまずい点があるかもしれませんし、もっといい方法があるかもしれません。こうするとよいよ、とアドバイスがもらえたら嬉しく思います。

それはそれとして、新しいものにチャレンジするって大変ですがワクワクしますね。


Selenium で Headless Chrome インストールに失敗した話

技術書典7向けの作業をしていて、ここしばらく追われてました。CEDEC 2019 とかでは、もう DirectX Raytracing を使っての話が多く、そろそろ本ブログでもやっていかないとなぁと思っている次第です。

さて技術書典のサイトで被チェック数が確認できるのですが、これを確認するのを自動化してみようと試行錯誤していました。既に、 GCP の Google cloud function で動くチェックツールを公開されている方が居まして、これを使えばそれで終わりです。
しかし、自分はGCPのほうは全く無知なので Azure や AWS で出来ないかなぁと思ってトライしていました。結果としては、これらの FaaS ではヘッドレスChrome が動作できないのと、元々のページが動的であることの2点より完全敗北しました。

最初の FaaS でなんとかやりたい!という野望は砕け散ったので、素直に Selenium と Chrome でなんとかすることにしました。Seleniumでヘッドレス Chrome を pip で次のようにインストールしたのですが、バージョン違いを言われて苦戦しました。

どうやら既に Chrome がインストールされている状況で、それと pip でインストールした Chrome のバージョン違いが起こると起動出来ないようです。自分の環境では次のようなエラーメッセージでした。

そこで既にインストールされている Chrome のバージョンを調べて、 chromedriver-binary のリポジトリ(サイト)を確認して、近いバージョンのものを選んでインストールすることにしました。コマンド例は次の通りです。

とりあえずはこれで Selenium から Chrome を起動して操作可能になったので、操作自動化を頑張ってみたいと思います。


技術書典6の感想など

技術書典6に本を出す側で無事に参加出来たので、今回もその感想を残しておこうと思います。技術書典への頒布側での参加は2度目となります。
前回は、疲れと解放感から感想まとめまでが時間が掛かっていたのですが、今回は後処理で色々と作業をしていて遅れました。

頒布内容の紹介は別ページを参照ください。

やっぱり物理本はいい

今回も前回同様、物理的な本を出す、ということを重要視していました。但し今回は電子版の用意をしてみることにしました。
物理本の印刷関連は前回体験したので、今回のチャレンジは電子版のダウンロードカードをどうするか、といったところでした。

サークル:すらりんラボが採った方法は以下の2つです。

  • 対面電書でのコード発行
  • BOOTHでのパスワードzipの配布

ここまで準備して挑んだのですが、電子版単体としては売れ行きは今ひとつでした。きっと技術書典という場所も関係しているのでしょう、圧倒的に物理本に人気がありました。
物理本が無くなってから、仕方なく電子版で妥協という方も居たのではないかと思います。

ダウンロードカードですが、安価な価格設定でバリアブル印刷可能なところを見つけるのが大変ですね。
シリアルコードを自分のプリンタでシールラベル印刷して、カードに貼る形式も最悪ケースで考えていましたが、色々と考えると BOOTH でのパスワード zip の配布が一番手軽だと思います。
手軽な方法が採れるということは、コストを抑えられるので物理本のオプションで電子版を付けられる!ということにも繋がります。今回バリアブル印刷でコストを掛けてしまったため、別料金を頂く形になってしまいました。これがさらに問題に繋がったわけですが・・・後ほど。

続きを読む


技術書典6に向けて追い込み中です

今週の初めに告知したように、技術書典6へ参加してきます。
DirectX12 や Vulkan の入門書籍を今回は用意しました。
一緒に参加する相棒は3Dオーディオ入門という書籍を書き上げてくれました。

・・・というより、みんな最後の締め間際の追い込み作業中です。

すらりんラボは技術書典6に参加します

なかなかブログ更新出来ていない点がありますが、その分これらの冊子に力を入れたので、是非見てもらえたらと思います。


読書

年末年始には久しぶりに本を買いました。
まだざっとしか読んではいないのですがアタリでした。

近年はゲームエンジンがゲーム作成(プログラミング)の主流となりつつあるので、C++で組んでいく方は随分と敷居が高いものになっている気がします。
そのせいもあってか、書籍の形で出版されることは無くなってしまったと思っていたので、出てきたことに嬉しく思いました。
内容の方も十分で、これから勉強をするのにもよいなと思います。

1つ興味深い点としては、ゲームエンジンでよくあるコンポーネントシステム型のやり方で C++ にてエンジンをくみ上げていくのが面白いです。
昨年秋の技術書典では当サークルでは C++ を使っての、割とコンポーネントシステム型を意識したシステム作りの本も出していました。

C++で挑む 2Dアニメーションシステム制作演習 (BOOTHへの商品リンク)

ゲームプログラミングC++が人気のある書籍になってくれれば、まだまだC++でやれる!ということと、コンポーネントシステム型の開発は間違いではない(むしろアタリ)という自信にもなるので、期待しています。

そして積み本となったのが、ドラゴンクエストXを支える技術 です。一緒に買ったのですが、読む時間が取れずでした・・・。


技術書典5分入庫完了

この間の技術書典5の冊子が、ようやく BOOTH の倉庫のほうに入庫完了状態となったようです。
これまでに注文してくれた方々、本当にありがとうございました。これからはお待たせせずに発送が出来るようになったと思います。

購入方法

Booth の以下のページにて購入できます。


(BOOTHへの商品リンク)

(BOOTHへの商品リンク)
DirectX9.0 EX 本。
単なる9.0ではなく ”Ex” 対応です。
C++14/17でラムダありです
自分のフレームワーク作りのお供に。
目次&サンプル 目次&サンプル

実物の見本誌を確認したい場合には、今だと Comic ZIN のほうで特集コーナーが設置されているようなのでそちらが利用可能です。

その他


技術書典5の感想など

今回初めて技術書典で本を出す側で参加出来たので、その感想などを残しておこうと思います。
終わった直後に書いておくのがよいのですが、慣れないこともあってか色々と疲れましたし&開放感を満喫していたのでここまで延びました・・・。

続きを読む



Nintendo Labo 第3弾出るらしい

Nintendo Labo が好調なのか、第3弾が出るようですね。
バラエティキットは買ってやってみましたが、なかなか楽しい感じでした。
昔懐かしの段ボール工作感がじっくり味わえたのと、ギミックが色々と入っていて「なるほどなぁ」と思うことが色々でした。

そんな Nintendo Labo ですが、第3弾がもう出るようです。予想以上に早かった・・・。
乗り物3種のようで、操縦している感が味わえるっぽいです。段ボールでどんな仕上がり、操作感になるのか楽しみなのでトライしてみようと思ってます。予約も開始されたようです。

バラエティキットもまだありますね。


IPv6 の本

IPv6 の書籍が昨年クラウドファンディングしていて、それに協力したのですが、先日忘れた頃にこれが届きました。たしか、昨年内に出すという目標だったと思いますが、半年ほどスリップした感じですね。
ただ現時点における仕様がちゃんと書かれているので、すごくいい書籍になっているんじゃないかと思っています。

で、 Amazon を覗いていたら、この書籍が並んでいました。まさか Amazon ですでに買えるようになっているとは驚きでした。

ほかの IPv6 書籍を読むよりはこれ1冊を読むのがいいんじゃないかというくらい内容が充実しているようです。以前に IPv6 を軽く勉強してみようと読んだときの情報は古くなっていて使えなかったりしていたので、この書籍で“今”に追いつけたらと思ってます。