超メモ帳(Web式)@復活

小説書いたり、絵を描いたり、プログラムやったりするブログ。統失プログラマ。


SPONSORED LINK

このブログの長文要約システムが完成した。

このブログの長文要約システムが完成した。


プログラミングたのしー! 今日はほとんど一日中コーディングをして過ごしていた。や、それでとうとう自分のブログの長文要約システムが完成しましたよ。こんな感じで動くものは前の日のページとか見てほしい。



深夜にバッチ処理で、はてなブログのデータをさくらインターネットMySQLに保存して、そちらから朝日新聞社の長文要約APIに接続して要約文を保存するような仕組みを作ったのね。で、はてなブログの方はAjax通信でさくらインターネットにデータを取りに行って、データを表示させるみたいな仕組みを作った。


仕事も繁忙期だったから休みしか開発できなくて完成させるまでに三週間ぐらい掛かってしまったな。でも無事完成させることができて良かった。途中で飽きてほっぽりだすというケースも考えられたので、完成させられたのは素晴らしいと自分を褒めておきたい。ブログカスタマイズは楽しいねぇ。これが終わったから今度こそFlutterでなんぞ趣味のアプリ開発をする。仕事でもアプリ開発してるけどさ、自分で趣味のアプリって開発したことがなかったのよね。なんかテキトーにそこら辺からTodoのアプリのサンプルとかそういうものを拾って来て、魔改造して自分向けの最強のTodoアプリを開発してみたい。


この長文要約のブログカスタマイズなんだけど、実は僕のアイディアではないのだね。こちらのめるくん (id:Windymelt)さんの記事で朝日新聞社の長文要約APIが紹介されてるから「おお、おもしろげー」と思って自分で作ることにしてしまった。


blog.3qe.us


だけど、AWSを使ってなんやかんややるところであっさり挫折。ブログ遊びはできるだけ金を掛けずにやりたいし、どんなふうにAWSのサービス組み合わせてやれば格安でできるのかさっぱりわからない。Google Cloudだったら無料の枠内でできるんじゃないかー?と思って色々と調べてみたけど、調べ物をやるだけで力尽きそうになることに気がついてきたので、サクッとオンプレで全部済ませてしまうことにした。僕はさくらインターネットとスタンダートプランを契約してて、そちらでなんか色んなRSS取ってきたりみたいな雑事用のスクリプトとか走らせていたので、その中に長文要約の処理も追加した。


仕組み自体は、0時にcrontabではてなブログのこちらのAPIからデータを取ってきてさくらインターネットMySQLに保存。


developer.hatena.ne.jp


そして、2時ごろにさくらインターネットのDBの中身でまだ要約されてないデータを探し出して、1日に20件だけ朝日新聞の長文要約APIにて処理して要約文を取得。その取得した要約文をまたMySQLの別テーブルに保存して、はてなブログのページがロードされるときにサーバに読みに行くようにした。


はてなブログからデータを取ってきて保存処理については、GitHubで公開しているのでそちらの方を確認してもらえばよろしいだろう。


github.com


できれば他の人も参考にしながら簡単におんなじようなシステムを組めるように解説記事なんぞを作りたくもあるんだけど、いつになるかは分からんなぁ。最近、ブログカスタマイズ熱が熱くなってるから色々とブログにカスタマイズを加えているのだけど、ランダムアクセスボタンみたいな需要があるブログパーツに関しては、ドキュメントの作り方の勉強がてら何か解説記事を書きたいなーと思ってる。


これからの展望としては、今の長文要約のやり方としては朝日新聞の長文要約APIを利用してやってるのだけど、これは1日20件までしか要約することができないのね。こちらを自前でpythonなんぞで用意できないかなーと思って色々と資料を集めてる。


qiita.com


pythonのライブラリを使って長文要約のAPIを用意して、Google CloudのCloud runとかHerokuの無料枠で運用することができないかなーと思って色々と調べている。バックエンドも色々と勉強したいと思ってるし、徐々にクラウドサービスに移行していくのも良いだろう。こういう趣味の開発は楽しいからどんどん機会を増やしていきたいところ。

プライバシーポリシー免責事項