用 python 写了个下载邮件附件的脚本,在 windows 计划任务里做了个 1 分钟循环定时。有没有办法改成实时接收?如果写 while 循环的话,一直重复登录邮箱是不是不太好,能否实现监听邮箱有新邮件再运行
用 python 写了个下载邮件附件的脚本,在 windows 计划任务里做了个 1 分钟循环定时。有没有办法改成实时接收?如果写 while 循环的话,一直重复登录邮箱是不是不太好,能否实现监听邮箱有新邮件再运行
|
1
IMAP POP3 都没有推送,只能定时查询
Exchange ActiveSync 了解下 |
|
kernelOct 23, 2018
2
一直登录有啥不好?
|
|
opengpsOct 23, 2018
3
其实 foxmail 这种也是定时去刷新登录的
|
|
jimzhongOct 23, 2018
4
|
|
XuJianHuaOct 23, 2018 via iPhone
5
监控
|
|
locozOct 23, 2018
6
邮件服务商没有提供可以推送的协议的话,就只能轮询了
|
|
qilishashaOct 23, 2018 via iPhone
7
自建邮件服务器就可以实时 其他登录后抓取就是了
|
|
geelawOct 23, 2018
8
你开着 Outlook 2016 然后用 Outlook object model 检查新邮件就行了。
|
|
noloOct 23, 2018
9
自动转发到 sendcloud 或者 mailgun,然后创建一个收信路由。
|
|
zhjitsOct 23, 2018
10
首先 SMTP 不是 realtime 协议,所以我觉得实时收取这个需求本身是不存在的。
一定要尽量快的话,IMAP 有 Push 扩展可以试试(效果也就那样) |
|
DavidNineRocOct 23, 2018
11
前端轮询, 或者后台轮询然后主动推给前端
|
|
shylingOct 23, 2018 via Android
13
Exchange Active Sync, Mapi 系列可以
EWS 也要手动 |
|
passerbytinyOct 23, 2018
14
楼上已经说了,传统 Email 服务的协议 SMTP、POP3、IMAP 都是没有推送这一块的,所以你只能轮询。至于为什么这样设计,因为普通邮递就是这样的,不加钱就只送到邮箱。
|
|
af463419014Oct 23, 2018
15
我用的方法可能不高大上,但比较实用吧
直接转发到 QQ 邮箱,然后来邮件了微信就会马上滴滴滴 |
|
psuwgipgfOct 23, 2018
16
我用 GMail 收信比较及时,只慢一两分钟的样子,你自己写程序话,可以找找有 api 提供邮箱吧
|
|
iwtbauhOct 23, 2018 via Android
17
SMTP 啊(如果你有公网 IP ),要知道以前的时候 sendmail 都是 Unix 发行版的标配。
另外 fetchmail 不了解一下?曾经电子邮件界的明星程序 |
|
iwtbauhOct 23, 2018 via Android
18
@geelaw
SMTP 怎么不是收信协议了。SMTP 是简单邮件“传输”协议,传输包括收和发两部分! msa 和 mta 前者发后者收和发,都是 SMTP 的实现。 当然不是收到信箱里,收到信箱里不叫收,叫“投递” |
|
cz5424Oct 23, 2018 via iPhone
19
设置自动转发到自己服务器
|
|
geelawOct 23, 2018 via iPhone
20
@iwtbauh #18 除非你是邮件服务器,目前我不 aware of 任何用 SMTP 收邮件的客户端。
但作为邮件服务器不存在“ SMTP 不实时”这种说法(它根本不 make sense ),因为邮件到达服务器才算收到,或者说服务器收到邮件的时刻才定义了这封邮件的“实时”。 |
|
iwtbauhOct 24, 2018 via Android
21
@geelaw #20
对啊,所以说 SMTP 并不能说“不是收信协议”。它是传输协议,既发也收 使用 SMTP 收信的客户端很多啊,MTA 都是啊,以前用的最多的就是 sendmail。这东西还是曾经很多 Unix 系统的标配。 |
|
tz1006Oct 31, 2018
24
一般实时的我都用 queue.get()
线程循环 queue.put() 你听得懂我在说什么吗? |