我有一台Raspberry Pi相机,我想用它来捕捉图像并将它们直接存储到FTP服务器上。我想绕过必须将图像存储在SD卡上,因为相机将在远程环境中使用而几乎不需要维护,因此我希望通过直接写入我的FTP来避免潜在的SD卡故障。
我有以下脚本:
import ftplib
import time
import picamera
with picamera.PiCamera() as camera:
camera.start_preview()
time.sleep(2)
for filename in camera.capture_continuous('img{counter:03d}.jpg'):
print('Captured %s' % filename)
server = 'server.address'
username = 'user'
password = 'pass'
ftp_connection = ftplib.FTP(server, username, password)
remote_path = "/Cam/"
ftp_connection.cwd(remote_path)
fh = open("/home/pi" + filename, 'rb')
ftp_connection.storbinary('STOR ', fh)
fh.close()
time.sleep(60) # wait 1 minute
我的脚本将图像保存到主目录,而不是将图像上传到FTP。事实上,它每秒都会保存一张图像。
我该如何解决这个问题?
答案 0 :(得分:2)
您未指定输出文件名
替换:
ftp_connection.storbinary('STOR ', fh)
使用:
ftp_connection.storbinary('STOR ' + filename, fh)