经过在网上各种资料查询邮报错原因是发送请求时没有包含imap id,
对于我程序所使用的python imapcilent库来说,在login之后select文件夹之前使用文档中所述的id_方法向服务器发送ID命令客户端信息即可
虽然没有什么卵用!
下面是解决办法
# 创建IMAP连接并提供IMAP ID信息
imap_conn = imaplib.IMAP4_SSL(imap_server, imap_port)
# # 登录到邮箱
imap_conn.login(email_address, email_password)
# 上传客户端身份信息
args = ("name", "XXXX", "contact", "XXXX@163.com", "version", "1.0.0", "vendor", "myclient")
typ, dat = imap_conn._simple_command('ID', '("' + '" "'.join(args) + '")')
print(imap_conn._untagged_response(typ, dat, 'ID'))
# 选择邮箱文件夹(例如,收件箱)
folder_name = 'INBOX' # 使用正确的文件夹名称
imap_conn.select(folder_name)
然后就可以运行下去了,不会报
Unsafe Login. Please contact kefu@188.com for help
这个问题了
解决Pythonimaplib库中的UnsafeLogin错误:添加IMAPID信息,
文章讲述了如何在使用Python的imaplib库时遇到UnsafeLogin错误,通过在login和select邮件文件夹之前发送包含客户端信息的ID命令来解决此问题。
349

被折叠的 条评论
为什么被折叠?



