ほぼPython

Not技術ブログBut勉強ブログ 内容には誤りがあることが多いです

Twitterで特定ユーザーが投稿する画像/動画を自動でダウンロードし続けるアプリケーションをつくった

はじめに

前回作ったプログラムを実際にアプリケーション化しました。
これで、実際にプログラムを配布できるようになりました。
Pythonで作ったプログラムを実際にWindowsで使えるアプリケーション(デスクトップアプリ)にする処理はPyInstallerというモジュールを使ったところ非常に簡単にできました。

使い方

①アプリケーションを下記リンクからダウンロードします。
zipファイルなのでプレビューは出来ません。そのためプレビューエラーとなる場合もあるかもしれませんがDLは問題なくできるはずです。
TwiMediaDownloader.zip - Google ドライブ
f:id:short_4010:20180205235437p:plain:w500


②ダウンロードしたら解凍します。解凍したらこのようなファイル/フォルダーが出てきます。
README.txtファイルには注意事項などが書いてあります。Appsフォルダをクリックしてください。
f:id:short_4010:20180205235710p:plain:w500


③TwiMediaDownloader.exeをクリックします。
f:id:short_4010:20180206000351p:plain:w500


④初回起動時には残念ながら、Windowsにより、このように表示されます。「詳細情報」をクリックしてください
f:id:short_4010:20180206000705p:plain:w300


⑤これで「実行」ボタンが出てくるので実行を押します。
f:id:short_4010:20180206001136p:plain:w300


⑥すると、このようにコマンドプロンプトが起動するはずです。(10秒くらいかかります・・・)
f:id:short_4010:20180206001432p:plain:w600


⑦そうしたらこのように監視したい相手のTwitterIDを入力します(鍵付きアカウント以外)
f:id:short_4010:20180206010238p:plain:w600


⑧これで監視スタートです。今回は僕のアカウントで実験します。
監視開始からこのように3回呟きました。
f:id:short_4010:20180206011531j:plain:w300


すると、コマンドプロンプト上にはリアルタイム(と言っても約30秒に1回のペースで読み込む)で書き込まれていきます。
f:id:short_4010:20180206011450p:plain:w600


これらのツイートは表示されるだけですが、これらのツイートに画像や動画が添付されていた場合、ダウンロードフォルダのTwiDownloadsというフォルダに自動で保存されます。今回のツイートでは3回中2回のツイートに画像を添付しました。その結果、上記フォルダ内にはその時に添付した画像が確かに保存されています。(今回、動画は添付しませんでしたが動画についても確認済みです。)
f:id:short_4010:20180206014537p:plain:w600


想定している用途

・「すぐ消す」系ツイートに添付された画像/動画を逃したくない方向け。
あまり需要ないだろうということには途中で気づいた。

問題点

・あまりアクセスしすぎるとTwitter APIの規約に触れる可能性があるので30秒に1回しかアクセスできないようにしている。
そのため、30秒間に何度もツイートを更新されると困る。
GUIを作るのが面倒だったのでコマンドプロンプトで動く感じなのだが、かなり抵抗されそう(怪しい・・・!みたいな)
・解凍して実行しようとするとWindowsに警告される。どうすれば良いのだろう。
・起動が若干重い。実行ファイルに使ったモジュールPyInstallerの欠点らしい。

今後

もっと需要がありそうなプログラムを作りたい

PS

ソフトウェア/デスクトップアプリ/アプリケーション/プログラム/スクリプト
ディレクトリ/フォルダ
CUI/コマンドプロンプト/CLI
これらの単語をどう使い分けるかに苦労した。