本文介绍了Gmail API将所有邮件标记为已读的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我最近永久性地切换到Gmail的普通html版本,因为它在Vimperator上玩得更好,现在我有4000条未读邮件隐藏在社交和推广标签中。我想将所有这些都标记为已读。有没有办法做到这一点,而不像they do here with imaplib

那样请求每条消息

推荐答案

如果要将收件箱中的所有内容绝对标记为已读,请在登录并INBOX

后执行此imap命令

tag STORE 1:* +FLAGS (Seen)

您可以使用imaplib、任何套接字库或仅支持SSH的TCP程序(如socatopenssl s_client)来完成此操作。

以下是用Gmail标记所有已读邮件所需的命令的文字记录:

$ openssl s_client -connect imap.gmail.com:993 -crlf
* OK Gimap ready for requests from 208.65.73.143 f185mb90387173ioe

a LOGIN [username] [password]
* CAPABILITY IMAP4rev1 UNSELECT IDLE NAMESPACE QUOTA ID XLIST CHILDREN X-GM-EXT-1 UIDPLUS COMPRESS=DEFLATE ENABLE MOVE CONDSTORE ESEARCH UTF8=ACCEPT
a OK [username] [name] authenticated (Success)

b SELECT INBOX
* FLAGS (Answered Flagged Draft Deleted Seen $Phishing $Forwarded Yellow $NotPhishing)
* OK [PERMANENTFLAGS (Answered Flagged Draft Deleted Seen $Phishing $Forwarded Yellow $NotPhishing *)] Flags permitted.
* OK [UIDVALIDITY 7] UIDs valid.
* 3617 EXISTS
* 0 RECENT
* OK [UIDNEXT 39807] Predicted next UID.
* OK [HIGHESTMODSEQ 4076284]
b OK [READ-WRITE] INBOX selected. (Success)

c STORE 1:* +FLAGS (Seen)
* 1 FETCH (FLAGS (Seen))
* 2 FETCH (FLAGS (Seen))
...
* 3617 FETCH (FLAGS (Seen))
c OK Success

d LOGOUT
* BYE LOGOUT Requested
d OK 73 good day (Success)

如果您有很多消息,您可能希望将+FLAGS.SILENTSTORE命令一起使用,这不会导致它将结果回显给您。

这篇关于Gmail API将所有邮件标记为已读的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

10-27 16:45