Python收取163邮箱--Star.hou

代码应该不仅仅可以收取163邮箱,163做了三方软件客户端收取代码验证。最近Python熟练上手,分享下:

    def connect_163_mail(self, user, passwd, port , host):
        try:
            imaplib.Commands["ID"] = ("AUTH")
            imapclient = imaplib.IMAP4_SSL(port = port, host = host)
            imapclient.login(user, passwd)
            args = ("name", "starmail", "contact", user, "version", "1.0.0", "vendor", "myclient")
            typ, dat = imapclient._simple_command('ID', '("' + '" "'.join(args) + '")')
            print(imapclient._untagged_response(typ, dat, 'ID'))
            status, msgs = imapclient.select()
        except Exception as e:
            print(e)
            _msg = "163Mail Login Error : {} 请登录后台设置->邮件收取->开启 邮箱:{}".format(e, user)
            print(_msg)
            # exit()
            return False
        _b = msgs[0]
        _int_mail_select_num = int(_b.decode())
        print("mail: {} count: {}".format(user, _int_mail_select_num))
        # exit()
        if _int_mail_select_num > 0:
            resp, data = imapclient.search(None, "ALL")
            for num in data[0].split():
                typ, data = imapclient.fetch(num, '(RFC822)')
                import email
                _raw_email = data[0][1]
                email_mes = email.message_from_string(_raw_email.decode())
                print(email_mes['Subject'])

            print("----end------------------------------------------------------")
        imapclient.close()
        imapclient.logout()
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值