前回の紹介からほぼ2年ぶりですが、Twitterからいい感じに画像を取得するツールのreinsの最新版をリリースしました!
reins 0.3
今回、以下の機能追加・バグ修正を行っています。
- リツイートの取得に関する動作変更の選択機能の追加
- reinsで取得した画像の元ツイートを表示する機能の追加(コマンド入力機能)
- Twitterの画像ファイルはlargeを指定して取得するように変更
- 複数画像があるツイートから先頭の画像しか取れていなかったのを修正
リツイートがつぶやいたユーザのディレクトリ配下に!
リツイートもリストのユーザと同列に保存していたら、正直管理しきれないほどディレクトリが増えてしまったので、 リツイートはリツイートしたユーザのディレクトリ配下にrtディレクトリを作成して、その配下に保存するようにしました。
同一ユーザの同一画像を複数保存する可能性が上がりましたが、視認性はよくなったかと思います。
またオプション設定により、そもそもリツイートを取得しないこともできるようにしました。
コマンド入力機能を追加!
reinsを起動しているコンソール(コマンドプロンプト)からのコマンド入力を受け付けるようにしました。
今回は、reinsで取得した画像の元ツイートを表示する「url」コマンドが実装されています。
url -o reinsで取得した画像ファイル名
このようにコマンド入力すると画像ファイルがつぶやかれたツイートを(これはオプションがついているのでブラウザで)表示します(URLを取得するだけなら-oはなくてもOK)。
ログが流れていても認識するので、気にせず入力してください。
注意
画像の元ツイート表示は、今回のバージョンのreinsを使って取得した画像からしか利用できません。 また、dbディレクトリのデータを削除しても同様に利用できなくなります。
所感
画像がつぶやかれた元のツイートの表示機能が楽しいです。
画像元のツイート表示機能は作りたかった機能なので実現できて嬉しいです。
実装のあれこれ
まず2年近くも触ってないと、自分で書いたコードですらなにがなんだかわかりませんね。。
処理と設計方針を思い出すので数日かかりました。
なので今回はドキュメントも並行して作成しています。ドキュメント大事。
それと今回、ツイート表示機能を実装するにあたり、一度テーブル設計を見直したのですが、 結局元のテーブルに追加する感じで機能追加してあります。 リストをベースにした設計になっているので、個別ユーザの情報にアクセスするのがなかなかに大変です。
今後のあれこれ
リツイート毎に同じユーザの情報があったりするので、ここらへんをいい感じに一覧化できるといいかなと思っていたりします。 リスト毎に保存するという現在の作り上だと、どうも難しそうではあるんですが、GUI化でなんとかできないかなと模索中です。
GUI化は別プログラムからreinsを呼び出す感じで実現しようかと思っています。 ここらへんも、どうGUIで表示するとか諸々まとまっていないので、まだなんとも言えないのですが、ユーザ名での検索ができるだけでも結構いいかなと思ったりしています。今回作ったコマンド入力機能を拡張しながらやっていく予定です。
あとは1週間くらい放置しているとTwitterからデータ取得する方のThreadが落ちちゃってるのを直したいのですけれど、 現状のSleep処理から見直さないとダメかもしれないので、結構根が深いです。 バージョン1のリリースまでにはなんとかしたいですが、そろそろTwitterの存続も怪しいのでどうですかね、間に合うかな?