我在python中编写脚本以在arduino的帮助下执行以下任务。 我想将温度数据发送到本地主机上的php服务器,如果温度下降到一定程度以下,我想发送电子邮件。
在读取值后我遇到了2个错误,我无法将其转换为整数 从serial.readline()
中读取后import MySQLdb
import serial
import time
import smtplib
ser=serial.Serial('/dev/ttyACM0',9600)
db=MySQLdb.connect("localhost","root","pass","db")
cursor=db.cursor()
while 1:
print("Waiting ;;...")
print("")
x= ser.readline()
print("collecting")
print("")
x=ser.readline()
sendmail() #ERRROR
print("Mail Sent")
time.sleep(0)
#x=int(x)#type coversionERROR
print("inserting into Database")
sql="INSERT INTO vidit1(temp) VALUES(%s);" %(x)
cursor.execute(sql)
db.commit()
time.sleep(1)
def sendmail():
content="send"
mail=smtplib.SMTP("smtp.gmail.com",587)
mail.ehlo()
mail.starttls()
mail.login("id","pass")
mail.sendmail("sender","reciever",content)
mail.close()
错误消息 python temp.py 等待;; ...
收集
追踪(最近一次通话): 文件“temp.py”,第24行,in 发邮件() NameError:名称'sendmail'未定义
提前致谢