2015年03月09日

Raspberry PiでDropboxにファイルをアップロードしてみた


【今日のゴール】
Dropbox-Uploaderを使って、Dropboxにファイルをアップロードする。
Dropbox-UploaderはDropbox の Datastore APIを使用してファイル操作をするツールです。

blue_dropbox_glyph-vflJ8-C5d.png

【手順】
  • Dropboxのアカウントの取得
  • Dropbox-Uploaderの入手
  • アクティベートと設定
  • ファイルをアップロードしてみる

Dropboxアカウントの取得

Dropboxのアカウントを持っていない場合、アカウントを取得しましょう。
こちらから、Dropboxのアカウントを作成します(無料です)

Dropbox-Uploaderの入手

Dropbox-Uploaderをgitのリポジトリから取得します。

/tmp ディレクトリにgitからcloneして、dropbox_uploader.shに 実行権限をつけます。
$ cd /tmp
$ sudo git clone https://github.com/andreafabrizi/Dropbox-Uploader/
$ cd Dropbox-Uploader
$ sudo chmod 755 dropbox_uploader.sh

ここでは、/usr/local/bin にシェルを置きます。(pathが通っているところに置いておくと便利です)
$ sudo mv /tmp/Dropbox-Uploader/dropbox_uploader.sh /usr/local/bin/

アクティベートと設定

続いて、アクティベート作業を行います。

dropbox_uploader.shを実行します。
$ cd /usr/local/bin/
$ ./dropbox_uploader.sh

実行すると以下のような表示がでます。
$ ./dropbox_uploader.sh
 This is the first time you run this script.

 1) Open the following URL in your Browser, and log in using your account: https://www.dropbox.com/developers/apps
 2) Click on "Create App", then select "Dropbox API app"
 3) Select "Files and datastores"
 4) Now go on with the configuration, choosing the app permissions and access restrictions to your DropBox folder
 5) Enter the "App Name" that you prefer (e.g. MyUploader84512395614070)

 Now, click on the "Create App" button.

 When your new App is successfully created, please type the
 App Key, App Secret and the Permission type shown in the confirmation page: 

 # App key: 

この状態で待機しておき、一度、Raspberry Piを離れ、ブラウザで3行目で指定されている下記アドレスにアクセスします。
https://www.dropbox.com/developers/apps

右上にある「Create app」ボタンをクリックします。

●What type of app do you want to create?
  「Dropbox API app」を選択
●What type of data does your app need to store on Dropbox?
  「Files and datastores」を選択
●Can your app be limited to its own folder?(アクセス可能な範囲)
  いずれか好きな方を選択。(私はYesにしました)
    「Yes」アプリ専用のフォルダのみアクセス可
    「No」全てのフォルダにアクセス可
●(上記でNoを選択した場合のみ)What type of files does your app need access to?
  アクセスできるファイルの種類について、いずれか好きな方を選択
    「Specific file types」テキストか写真のファイルのみ
    「All file types 」全ての種類のファイル
●Provide an app name, and you're on your way.
  アプリの名前:好きな名前を入力(Dropboxという文字列は含められない)
  私は「RaspiBox」にしました。

最後に「Create App」ボタンを押すと、アプリの情報画面に移ります。
この画面にある「App key」と「App secret」を控えておきます。


Raspberry Piの先ほど待機させておいた画面にもどり、「App key」を入力しEnterキーを押します。
続いて「App secret」も聞かれるので、こちらも、先ほど控えた値を入力しEnterキーを押します。
アクセス可能な範囲について、また聞かれるので、「a」アプリ専用のフォルダのみ、「f」全てのフォルダ、いずれかを入力してEnterを押します。
# App key: ***************
# App secret: *****************
# Permission type, App folder or Full Dropbox [a/f]: a
確認が表示されますので、「y」を入力しEnterを押します。
 > App key is ***************, App secret is ***************** and Access level is App Folder. Looks ok? [y/n]: y

「App key」と「App secret」が正しければ、以下のような表示がされます。
 > Token request... OK

 Please open the following URL in your browser, and allow Dropbox Uploader
 to access your DropBox folder:

 --> https://www.dropbox.com/1/oauth/authorize?oauth_token=*************

Press enter when done...

ここで、この画面はこのまま待機しておき、ブラウザで6行目の
URL(https://www.dropbox.com/1/oauth/authorize?oauth_token=*************)にアクセスします。

すると、
「RaspiBox が Dropbox に保存されている アプリ、RaspiBox フォルダへのアクセスをリクエストしています。」

という画面が出ますので、「許可」をクリックします。

「できました!これで RaspiBox さんがあなたの Dropbox と連携しました。」
と表示されましたら、Raspberry Piに戻り、Enterを押します。

「Setup completed!」と表示されましたら、完了です。

ちなみに、設定が完了すると、ホームディレクトリにtoken等が記入された隠しファイルが作成されます。
$ cd ~
$ sudo view .dropbox_uploader

ファイルをアップロードしてみる

早速ファイルをアップロードしてみます。

ファイルをDropboxにアップロードするには、以下のようにコマンドを実行します。
$ dropbox_uploader.sh upload [ローカルの元ファイル] [アップロードするファイル名]

例えば以下のような感じです。
$ dropbox_uploader.sh upload /tmp/aaa.txt aaa.txt

upload以外にも、以下のように削除・移動などのコマンドもあります。
  • upload
  • download
  • delete
  • move
  • copy
  • mkdir
  • list
  • share
  • info
  • unlink

詳しい使い方は以下を参照してください。
https://github.com/andreafabrizi/Dropbox-Uploader

タグ:Raspberry Pi


posted by Raspberry Pi at 15:54 | Raspberry Pi | このブログの読者になる | 更新情報をチェックする
×

この広告は180日以上新しい記事の投稿がないブログに表示されております。