オンラインストレージに直接ダウンロードしたい 作り方〜まとめ
前回に続きまして、「Web上にあるファイルをオンラインストレージに保存」の作り方編です。
変更履歴
2016.12.06 母艦指示で利用するコマンドをcurlからwgetに変更
作り方
IFTTTの「Add File from URL」を使う
用意するもの
手順
個人的に起動を楽にしたいのでiPhoneアプリの「Workflow」から起動させることにしました。
- Workflowを作成
- IFTTTのWorkflowチャンネルをトリガー指定
- アクションにオンラインストレージの「Add File from URL」を指定
使い方
- URLをコピー
- Todayウィジェットから先ほど作成したWorkflowを実行
- IFTTTレシピが実行される
- オンラインストレージにファイルが保存される
ちなみに
オンラインストレージへの保存がうまくされないときは、レシピ編集画面からログを確認できます。
母艦にダウンロード指示
用意するもの
手順
※手抜きですみません…
- Workflowを作る
2016.12.06追記
初回投稿時はcurlにてダウンロードするだけだったのですが
- 母艦でダウンロードが終わるまでWorkflowが待機状態になる
- 複数ファイルをまとめてダウンロードできない
という問題点があったことからscreenとwgetを使うようにしました。
screen利用の理由
- SSH接続中にバックグラウンドで処理を行える
- SSHセッションが終了してもダウンロードを続ける
- ダウンロードが終わると自動的にscreenは終了される
- ちなみに「wget -b」では何故かダメでした
- WorkflowのSSH接続は、割とLinuxのSSHコマンドと近いのかも。screenの使い方まんま流用でしっかり動きました。
wget利用の理由
- 単純に複数のURLを一括で処理して欲しかったので
参考サイト様
↓バックグラウンドダウンロードできるようになりました
リモートホストにバックグラウンドで処理を実行させる方法 - Qoosky
↓wgetのインストール方法
Mac OS X Yosemiteでwgetコマンドが使えない。 - 大人になったら肺呼吸
その他
そういえばSSH経由の時だけwgetにパスが通らない… まぁ使い勝手には影響しないので放置します。
追記ここまで
使い方
- 屋外の場合は自宅にVPN接続しておく
- URLをコピー
- Todayウィジェットから先ほど作成したWorkflowを実行
- SMB共有されたフォルダにファイルが保存される
- オンラインストレージにファイルが同期される
まとめ
というわけでまとめですが、オススメは母艦を使う方法です。トラブルがあっても自己解決しやすいですから。(当初の目的であったWebからWebに保存ではなくなってますが)
Macをお持ちの方は簡単に
- VPNサーバー
- SMBサーバー
を構築できますので、ぜひお試しください。
今までVPNが使えてもリモートデスクトップくらいにしか使っていなかったのですが、初めて割と便利と思えることができた気がします。
Workflowからのシェルコマンド実行は応用が効きそうなので、今後も色々試したいと思います。
それではまた。
【蛇足】紆余曲折メモ
自分用の今回何をやったかの備忘録
- IFTTTからオンラインストレージへの保存
- 連続で使うとエラーが出る
- Zapierならどうかと試すが、そもそもURLからダウンロードできない
- Amazon S3に保管するほうが安全ではないか?
- Raspberry piからs3fsでAmazon S3に繋ぎ、それをSMB共有すればいいのでは?
- →自宅内で使うときに遅そう。環境作るの面倒そう。
- もういっそのことMacのSMB共有を使って、フォルダをオンラインストレージと同期でいいか
ちなみに今回はやってませんが「母艦にダウンロード指示」の方でwgetを使えば、複数のURLをクリップボードに入れて順次ダウンロードとかもできそうです。できました。