前回の記事の続きです。

NHK 語学のラジオ講座をさくらの VPS で自動ダウンロード

http://hack.ironsand.net/2012/auto-download-nhk-language-mp3-by-vps/

今回はさくら VPS にダウンロードした mp3 を Sugarsync にアップロードするについて解説します。

さくらの VPS 上に SugarSync や Dropbox を常駐させるのはできるのかどうかわかりませんでしたし、できてもメモリを食いそうなので今回は SugarSync が提供する API を使用します。

自動的に SugarSync にファイルをアップロードさせるための手順は以下の流れになります。

  1. API を使うために SugarSync の Developer に登録

  2. upload_nhkradio.rb の設定

  3. cron の設定

1. API を使うために SugarSync の Developer に登録

まず SugarSync の API を使うために Developer として登録を行います。

http://www.sugarsync.com/developer/signup

もし Sugarsync のアカウント自体を持ってない方がいたら、まず[こちら][1]から SugarSync 自体のアカウントを作ってください。

Developer 登録をすると Access Key IDPrivate Access Key が手に入りますのでメモっていてください。あとで必要になります。

次に[Create App]から新しいアプリの登録を行いアプリケーションキーを取得してください。

新しいアプリの作成には以下の 5 つの情報を入力する必要があります。

Name:[アプリ名]“NHK Radio Uploader"とか適当に

Publisher:[製作者] #名前をいれておきましょう。

Description:[詳細] “Upload NHK radio mp3” とでも。

Support URL:[作者サイト] 自分は Twitter のアカウントいれてます。

Support Email:[連絡先] 普通に自分のメールアドレスを。

以上で App が作れたら App ID が入手できますのでコレもメモっておいてください。

2. upload_nhkradio.rb の設定

必要な情報が揃いましたので upload_nhkradio.rb の設定を行います。

まず[upload_nhkradio.zip][2]をダウンロードして解凍し、sugarsync.rb, upload_nhkradio.rb, upload_nhkradio_ini.rbの 3 つのファイルを取り出してください。

そして upload_nhkradio_ini.rb を開いて先ほど入手した情報とアップロードするフォルダ名を設定します。

#SugarSyncのユーザ名(メールアドレス),パスワード
@username = ""
@password = ""

#App ID /sc/などから始まる英数字
@application = ""

@access_key_id = ""
@private_access_key = ""

#refresh_tokenを設定しておけばusername, passwordはいりません。
#username,passwordで接続すると無駄に一つ多く接続するのでrefresh_tokenを設定して使いましょう。
@refresh_token = ""

#SugarSyncのどのフォルダにアップロードするか。 e.g. "sugarsync/nhklang"
#事前にフォルダは作っておきましょう。
@folder_name = ""

設定がおわったら 3 つのファイルを前回の記事で作成した CaptureStream.rb が置いてある nhklang ディレクトリに WinSCP などでアップロードします。

これでアップロードする準備は整いました。

$ruby upload_nhkrandio.rb

とするだけでアップロードが開始されるはずです。(時間が掛かるので注意)

3. cron の設定

ここまで来れば後は前回設定した cron に少し設定を加えるだけです。

crontab -e

して cron の設定を開き

で cron の設定ファイルを開いて

PATH=/etc:/bin:/sbin:/usr/bin:/usr/sbin:~/bin
0 11 * * mon ruby ~/nhklang/CaptureStream.rb >> ~/nhklang/Capture.log
<span style="color:red;">30 11 * * mon cd ~/nhklang; ruby upload_nhkradio.rb >> Capture.log</span></pre>
<p></p>


の1行を加えて全ての設定は終了です。


これで来週から月曜日の12時頃にはパソコンのローカルフォルダに自動的に語学講座のmp3がダウンロードされてるはずです。