ブルーの趣味Log

日々の備忘録

RaspberryPiとwebカメラで監視カメラ作る②

今回は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