Gmail通知代码python



几天前我刚刚开始使用Python,现在我正在尝试使用Python为Arduino制作Gmail通知器。我得到以下错误。我已经正确地输入了我的用户名和ID,我甚至试过把谷歌给出的应用程序指定的代码,但我仍然得到这个错误。

import serial, sys, feedparser,time
#Settings - Change these to match your account details
USERNAME="XXXX"
PASSWORD="XXXXXXX"
PROTO="https://"
SERVER="mail.google.com"
PATH="/gmail/feed/atom/important"
try:
  ser = serial.Serial("COM3", 9600)
except serial.SerialException:
      print ("no device connected exiting")
      sys.exit()
newmails = int(feedparser.parse(PROTO + USERNAME + ":" + PASSWORD + "@" + SERVER + PATH)["feed"]["fullcount"])
# Output data to serial port
if newmails > 0:
  ser.write("m")
  print("some mail")
else:
  ser.write("n")
  print("no mail")
#print data to terminal
# Close serial port
ser.close()

错误如下:- C:Python33>python mailarduino.py文件"mailarduino.py",第13行Newmails = int(feedparser.)解析(PROTO + USERNAME + ":" + PASSWORD +"@" + SE RVER + PATH)["feed"]["fullcount"])文件"C: Python33实现feedparser - 5.1 lib 网站 py3.3.egg feedparser.py",第346行,在中getitem返回字典。getitem(self, key) KeyError:"fullcount"

C: Python33>

你正在复制的教程是5年前的。API,也就是你可以调用的函数和它们返回的东西,会随着时间而改变。我建议打印出来:

feedparser.parse(PROTO + USERNAME + ":" + PASSWORD + "@" + SERVER + PATH)

,看看会产生什么。一旦你看到你有什么,然后你可以找出如何提取你想要的信息。

最新更新