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 相关文章推荐
在Django框架中编写Context处理器的方法
Jul 20 Python
Python获取指定文件夹下的文件名的方法
Feb 06 Python
python利用高阶函数实现剪枝函数
Mar 20 Python
使用Python更换外网IP的方法
Jul 09 Python
python 遍历列表提取下标和值的实例
Dec 25 Python
在Qt5和PyQt5中设置支持高分辨率屏幕自适应的方法
Jun 18 Python
Python hashlib加密模块常用方法解析
Dec 18 Python
Python实现搜索算法的实例代码
Jan 02 Python
使用Python打造一款间谍程序的流程分析
Feb 21 Python
python输出第n个默尼森数的实现示例
Mar 08 Python
Python configparser模块封装及构造配置文件
Aug 07 Python
Python字符串对齐、删除字符串不需要的内容以及格式化打印字符
Jan 23 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处理二进制数据的实现方法
2016/06/13 PHP
php注册审核重点解析(数据访问)
2017/05/23 PHP
JavaScrip单线程引擎工作原理分析
2010/09/04 Javascript
JQuery UI的拖拽功能实现方法小结
2012/03/14 Javascript
nodejs实现黑名单中间件设计
2014/06/17 NodeJs
js获取UserControl内容为拼html时提供方便
2014/11/02 Javascript
javascript冒泡排序小结
2016/04/10 Javascript
JQuery.validate在ie8下不支持的快速解决方法
2016/05/18 Javascript
9个让JavaScript调试更简单的Console命令
2016/11/14 Javascript
React组件之间的通信的实例代码
2017/06/27 Javascript
es6学习之解构时应该注意的点
2017/08/29 Javascript
微信小程序switch开关选择器使用详解
2018/01/31 Javascript
JavaScript剩余操作符Rest Operator详解
2019/07/20 Javascript
JS三级联动代码格式实例详解
2019/12/30 Javascript
详解node和ES6的模块导出与导入
2020/02/19 Javascript
python调用cmd复制文件代码分享
2013/12/27 Python
python实现发送邮件功能代码
2017/12/14 Python
python django 原生sql 获取数据的例子
2019/08/14 Python
Python散点图与折线图绘制过程解析
2019/11/30 Python
详解python破解zip文件密码的方法
2020/01/13 Python
python中提高pip install速度
2020/02/14 Python
查看已安装tensorflow版本的方法示例
2020/04/19 Python
PyInstaller的安装和使用的详细步骤
2020/06/02 Python
Python pytesseract验证码识别库用法解析
2020/06/29 Python
python实现测试工具(一)——命令行发送get请求
2020/10/19 Python
Django如何继承AbstractUser扩展字段
2020/11/27 Python
python实现跨年表白神器--你值得拥有
2021/01/04 Python
python绘制汉诺塔
2021/03/01 Python
HTML5 Canvas实现图片缩放、翻转、颜色渐变的代码示例
2016/02/28 HTML / CSS
印尼极简主义和实惠的在线家具店:Fabelio
2019/03/27 全球购物
美国主要的特色咖啡和茶公司:Peet’s Coffee
2020/02/14 全球购物
士力架广告词
2014/03/20 职场文书
经济管理自荐书
2014/06/09 职场文书
教师一帮一活动总结
2014/07/08 职场文书
护士2015年终工作总结
2015/04/29 职场文书
小学德育工作总结2015
2015/05/12 职场文书