gpt4 book ai didi

Python Imaplib : Get new gmail mails without reconnect

转载 作者:行者123 更新时间:2023-11-28 20:43:50 27 4
gpt4 key购买 nike

我正在编写一个 python 脚本,定期检查与特定搜索匹配的新电子邮件。但是,如果不重新连接,它永远不会显示新电子邮件。

mail = imaplib.IMAP4_SSL('imap.gmail.com')
mail.login(user,passwd)
mail.select("inbox")
while True:
result, idData = mail.uid('search', query, "ALL")
processIDs(idData)
time.sleep(60)

搜索会在登录时找到与我的查询匹配的所有电子邮件,但它永远不会找到运行时到达的电子邮件。一旦我停止脚本并重新启动它,所有电子邮件都会立即显示。

如果用谷歌搜索并查看 imaplib 文档,但找不到任何有用的东西。

如何在不重新连接到 imap 服务器的情况下显示新电子邮件?

编辑:我想避免重新连接的原因是因为 gmail 速率限制。

最佳答案

好吧,这是一种尝试和尝试的方法,最后我们得到了一个解决方案,虽然不是最优的,hack 是每次脚本从 sleep 中醒来后重新连接,从开始获取收件箱,这可以可以通过刷新页面轻松完成(就像我们在普通浏览器中重新加载一样),所以它可能看起来像这样:

mail = imaplib.IMAP4_SSL('imap.gmail.com')
mail.login(user,passwd)
while True:
mail.select("inbox")
result, idData = mail.uid('search', query, "ALL")
processIDs(idData)
time.sleep(60)

关于Python Imaplib : Get new gmail mails without reconnect,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28190765/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com