树莓派自动发送照片代码
时间: 2023-05-16 20:06:35 浏览: 151
以下是一个使用 Python 和树莓派摄像头自动拍照并发送照片到指定邮箱的代码:
```python
import os
import smtplib
import time
from email.mime.image import MIMEImage
from email.mime.multipart import MIMEMultipart
# 设置邮箱账号和密码
EMAIL_USER = 'your_email@example.com'
EMAIL_PASSWORD = 'your_email_password'
# 设置收件人邮箱
RECIPIENT_EMAIL = 'recipient_email@example.com'
# 设置拍照间隔时间(秒)
PHOTO_INTERVAL = 60
# 初始化摄像头
os.system('sudo modprobe bcm2835-v4l2')
# 创建邮件对象
msg_root = MIMEMultipart()
msg_root['Subject'] = '树莓派照片'
msg_root['From'] = EMAIL_USER
msg_root['To'] = RECIPIENT_EMAIL
# 开始循环拍照并发送
while True:
# 拍照
os.system('raspistill -o photo.jpg')
# 读取照片并添加到邮件中
with open('photo.jpg', 'rb') as f:
img = MIMEImage(f.read())
msg_root.attach(img)
# 发送邮件
smtp = smtplib.SMTP('smtp.gmail.com', 587)
smtp.starttls()
smtp.login(EMAIL_USER, EMAIL_PASSWORD)
smtp.sendmail(EMAIL_USER, RECIPIENT_EMAIL, msg_root.as_string())
smtp.quit()
# 等待一段时间后再拍照
time.sleep(PHOTO_INTERVAL)
```
这个代码会每隔一定时间拍摄一张照片,并将照片发送到指定邮箱。你需要将代码中的 EMAIL_USER、EMAIL_PASSWORD 和 RECIPIENT_EMAIL 替换为你自己的邮箱账号和密码以及收件人邮箱。
阅读全文