python实现的接收邮件功能示例【基于网易POP3服务器】


Posted in Python onSeptember 11, 2019

本文实例讲述了python实现的接收邮件功能。分享给大家供大家参考,具体如下:

一 简介

本代码实现从网易POP3服务器接收邮件

二 代码

import poplib
import re
import tkinter
class Window:
  def __init__(self,root):
    label1 = tkinter.Label(root,text='POP3')
    label2 = tkinter.Label(root,text='Port')
    label3 = tkinter.Label(root,text='用户名')
    label4 = tkinter.Label(root,text='密码')
    label1.place(x=5,y=5)
    label2.place(x=5,y=30)
    label3.place(x=5,y=55)
    label4.place(x=5,y=80)
    self.entryPop = tkinter.Entry(root)
    self.entryPort = tkinter.Entry(root)
    self.entryUser = tkinter.Entry(root)
    self.entryPass = tkinter.Entry(root,show = '*')
    self.entryPort.insert(tkinter.END,'110')
    self.entryPop.place(x=50,y=5)
    self.entryPort.place(x=50,y=30)
    self.entryUser.place(x=50,y=55)
    self.entryPass.place(x=50,y=80)
    self.get = tkinter.Button(root,text='收取邮件',command = self.Get)
    self.get.place(x=60,y=120)
    self.text=tkinter.Text(root)
    self.text.place(y=150)
  def Get(self):
    try:
      host = self.entryPop.get()
      port =int(self.entryPort.get())
      user = self.entryUser.get()
      pw = self.entryPass.get()
      pop=poplib.POP3(host)
      pop.user(user)
      pop.pass_(pw)
      stat=pop.stat()
      self.text.insert(tkinter.END,'Staus:%d message(s),%d bytes\n' % stat)
      rx_headers = re.compile(r"^(From|To|Subject)")
      for n in range(stat[0]):
        response,lines,bytes = pop.top(n+1,10)
        self.text.insert(tkinter.END,"Message %d (%d bytes)\n" % (n+1,bytes))
        self.text.insert(tkinter.END,"-"*30+'\n')
        str_lines=[]
        for l in lines:
          str_lines.append(l.decode(encoding = 'utf-8'))
        self.text.insert(tkinter.END,"\n".join(filter(rx_headers.match,str_lines)))
        self.text.insert(tkinter.END,'\n')
        self.text.insert(tkinter.END,"-"*30+'\n')
    except Exception as e:
        self.text.insert(tkinter.END,'接收错误\n')
root =tkinter.Tk()
window=Window(root)
root.mainloop()

三 运行结果

python实现的接收邮件功能示例【基于网易POP3服务器】

更多关于Python相关内容可查看本站专题:《Python Socket编程技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
linux系统使用python监控apache服务器进程脚本分享
Jan 15 Python
Python连接SQLServer2000的方法详解
Apr 19 Python
基于Django的ModelForm组件(详解)
Dec 07 Python
python模拟鼠标点击和键盘输入的操作
Aug 04 Python
python使用requests.session模拟登录
Aug 09 Python
Python 经典算法100及解析(小结)
Sep 13 Python
Python pandas RFM模型应用实例详解
Nov 20 Python
利用matplotlib实现根据实时数据动态更新图形
Dec 13 Python
python环境搭建和pycharm的安装配置及汉化详细教程(零基础小白版)
Aug 19 Python
python装饰器代码深入讲解
Mar 01 Python
解决PDF 转图片时丢文字的一种可能方式
Mar 04 Python
PyTorch梯度裁剪避免训练loss nan的操作
May 24 Python
python实现的发邮件功能示例
Sep 11 #Python
python 字符串常用函数详解
Sep 11 #Python
python sqlite的Row对象操作示例
Sep 11 #Python
Python lambda表达式filter、map、reduce函数用法解析
Sep 11 #Python
python针对mysql数据库的连接、查询、更新、删除操作示例
Sep 11 #Python
Python range、enumerate和zip函数用法详解
Sep 11 #Python
Python 实现文件读写、坐标寻址、查找替换功能
Sep 11 #Python
You might like
PHP执行zip与rar解压缩方法实现代码
2010/12/05 PHP
php join函数应用
2011/05/04 PHP
PHP中实现接收多个name相同但Value不相同表单数据实例
2015/02/03 PHP
php实现简易聊天室应用代码
2015/09/23 PHP
thinkphp框架实现删除和批量删除
2016/06/29 PHP
php UNIX时间戳用法详解
2017/02/16 PHP
Laravel实现通过blade模板引擎渲染视图
2019/10/25 PHP
jQuery 点击图片跳转上一张或下一张功能的实现代码
2010/03/12 Javascript
js实现横向百叶窗效果网页切换动画效果的方法
2015/03/02 Javascript
JavaScript中textRange对象使用方法小结
2015/03/24 Javascript
jQuery插件pagination实现分页特效
2015/04/12 Javascript
理解Javascript的动态语言特性
2015/06/17 Javascript
学习javascript面向对象 掌握创建对象的9种方式
2016/01/04 Javascript
JS动态改变浏览器标题的方法
2016/04/06 Javascript
文本框只能输入数字的实现方法(兼容IE火狐)
2016/06/25 Javascript
jQuery基于函数重载实现自定义Alert函数样式的方法
2016/07/27 Javascript
js+div+css下拉导航菜单完整代码分享
2016/12/28 Javascript
微信小程序(三):网络请求
2017/01/13 Javascript
vue快捷键与基础指令详解
2017/06/01 Javascript
理解nodejs的stream和pipe机制的原理和实现
2017/08/12 NodeJs
node.js实现微信JS-API封装接口的示例代码
2017/09/06 Javascript
JS实现登录页密码的显示和隐藏功能
2017/12/06 Javascript
在LayUI图片上传中,解决由跨域问题引起的请求接口错误的方法
2019/09/24 Javascript
Python3数据库操作包pymysql的操作方法
2018/07/16 Python
python2.7实现复制大量文件及文件夹资料
2019/08/31 Python
使用Python开发个京东上抢口罩的小实例(仅作技术研究学习使用)
2020/03/10 Python
python3 中时间戳、时间、日期的转换和加减操作
2020/07/14 Python
localStorage 设置过期时间的方法实现
2018/12/21 HTML / CSS
将HTML5 Canvas的内容保存为图片借助toDataURL实现
2013/05/20 HTML / CSS
linux面试题参考答案(6)
2016/06/23 面试题
高中毕业自我鉴定
2013/12/22 职场文书
母亲节演讲稿范文
2014/01/02 职场文书
工作决心书范文
2014/03/11 职场文书
社团2014年植树节活动总结
2014/03/11 职场文书
2014年测量员工作总结
2014/12/12 职场文书
SQL使用复合索引实现数据库查询的优化
2022/05/25 SQL Server