今回はraspberrypiからdropboxに画像をアップロードする方法について
もちろんpythonで
参考にさせていただいた方のブログ
tatata.hatenablog.jp
まずはdropboxのアカウントを作成し、アクセストークンを手に入れます。
次にdropbox for pythonをインストール
github.com
sudo pip install dropbox
アップロードプログラム(上記ブログを参考にしています)
import dropbox dbx = dropbox.Dropbox('アクセストークン') dbx.users_get_current_account() f = open('画像のパス', 'rb') dbx.files_upload(f.read(),'dropbox上でのパス') f.close()
それでもって、前回の撮影プログラムとあわせるとこうなる
import subprocess from datetime import datetime import dropbox import os imname = datetime.today().strftime("%Y%m%d%H%M") + "_wcam1.jpg" ipath = "/home/pi/Desktop/" + "/"+imname cmd = "fswebcam --no-banner -r 1920x1080 -D 5"+" "+ipath subprocess.call(cmd,shell=True) dbx = dropbox.Dropbox('アクセストークン') dbx.users_get_current_account() f = open(ipath, 'rb') dbx.files_upload(f.read(),"/"+imname) f.close() os.remove(ipath)
とりあえず今日はここまで
※追記
実はUbuntu上で開発していて、raspberrypiに移植した際に動かなかった
dbx.users_get_current_account()を実行するとTraceback〜とかいうエラーが帰ってきた
原因はどうもrequestsのバージョンらしい
というわけで、以下を実行し事なきを得た
sudo pip install requests==2.18.0