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 相关文章推荐
Python2.x中文乱码问题解决方法
Jun 02 Python
详解Python3操作Mongodb简明易懂教程
May 25 Python
Python数据结构与算法之图结构(Graph)实例分析
Sep 05 Python
Python编程实现的简单神经网络算法示例
Jan 26 Python
Python设置在shell脚本中自动补全功能的方法
Jun 25 Python
介绍一款python类型检查工具pyright(推荐)
Jul 03 Python
Django应用程序入口WSGIHandler源码解析
Aug 05 Python
python计算n的阶乘的方法代码
Oct 25 Python
python获取array中指定元素的示例
Nov 26 Python
pytorch实现mnist数据集的图像可视化及保存
Jan 14 Python
多个版本的python共存时使用pip的正确做法
Oct 26 Python
Python使用grequests并发发送请求的示例
Nov 05 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中MVC的开发经验分享
2012/05/17 PHP
利用PHP实现图片等比例放大和缩小的方法详解
2013/06/06 PHP
百度站点地图(百度sitemap)生成方法分享
2014/01/09 PHP
一个实用的php验证码类
2017/07/06 PHP
PHP封装的数据库模型Model类完整示例【基于PDO】
2019/03/14 PHP
拖拉表格的JS函数
2008/11/20 Javascript
Ajax搜索结果页面下方的分页按钮的生成
2012/04/05 Javascript
Function.prototype.bind用法示例
2013/09/16 Javascript
JS读取XML文件示例代码
2013/11/15 Javascript
自己动手制作基于jQuery的Web页面加载进度条插件
2016/06/03 Javascript
JavaScript toUpperCase()方法使用详解
2016/08/26 Javascript
javascript 正则表达式去空行方法
2017/01/24 Javascript
JavaScript数组复制详解
2017/02/02 Javascript
详解AngularJs路由之Ui-router-resolve(预加载)
2017/06/13 Javascript
详解Node使用Puppeteer完成一次复杂的爬虫
2018/04/18 Javascript
微信小程序实现通过双向滑动缩放图片大小的方法
2018/12/30 Javascript
Node.js系列之安装配置与基本使用(1)
2019/08/30 Javascript
Vue Router中应用中间件的方法
2020/08/06 Javascript
Python实现屏幕截图的代码及函数详解
2016/10/01 Python
Python列表list操作符实例分析【标准类型操作符、切片、连接字符、列表解析、重复操作等】
2017/07/24 Python
python logging日志模块以及多进程日志详解
2018/04/18 Python
Tensorflow实现卷积神经网络的详细代码
2018/05/24 Python
pygame游戏之旅 添加游戏界面按键图形
2018/11/20 Python
TensorFlow 输出checkpoint 中的变量名与变量值方式
2020/02/11 Python
图解CSS3制作圆环形进度条的实例教程
2016/05/26 HTML / CSS
HTML5 声明兼容IE的写法
2011/05/16 HTML / CSS
丝芙兰中国官方商城:SEPHORA中国
2018/01/10 全球购物
SAZAC的动物连体衣和动物睡衣:Kigurumi Shop
2020/03/14 全球购物
大学毕业感言一句话
2014/02/06 职场文书
八年级语文教学反思
2014/02/11 职场文书
不服从上级领导安排的检讨书
2014/09/14 职场文书
计生办班子群众路线教育实践活动个人对照检查材料思想汇报
2014/10/04 职场文书
2016年小学圣诞节活动总结
2016/03/31 职场文书
读《人生的智慧》有感:闲暇是人生的精华
2019/12/25 职场文书
mysql sum(if())和count(if())的用法说明
2022/01/18 MySQL
python使用opencv对图像添加噪声(高斯/椒盐/泊松/斑点)
2022/04/06 Python