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 相关文章推荐
python模拟登陆阿里妈妈生成商品推广链接
Apr 03 Python
线程和进程的区别及Python代码实例
Feb 04 Python
详解Python中open()函数指定文件打开方式的用法
Jun 04 Python
分享Python开发中要注意的十个小贴士
Aug 30 Python
python批量替换多文件字符串问题详解
Apr 22 Python
利用python的socket发送http(s)请求方法示例
May 07 Python
python 常见字符串与函数的用法详解
Nov 23 Python
Python中的self用法详解
Aug 06 Python
python返回数组的索引实例
Nov 28 Python
python使用bs4爬取boss直聘静态页面
Oct 10 Python
python matplotlib工具栏源码探析三之添加、删除自定义工具项的案例详解
Feb 25 Python
python turtle绘制多边形和跳跃和改变速度特效
Mar 16 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
Win9x/ME下Apache+PHP安装配置
2006/10/09 PHP
基于PHP的cURL快速入门教程 (小偷采集程序)
2011/06/02 PHP
ThinkPHP5&5.1框架关联模型分页操作示例
2019/08/03 PHP
Jquery常用技巧收集整理篇
2010/11/14 Javascript
window.addEventListener来解决让一个js事件执行多个函数
2012/12/26 Javascript
getComputedStyle与currentStyle获取样式(style/class)
2013/03/19 Javascript
深入解析JavaScript中的变量作用域
2013/12/06 Javascript
详细分析使用AngularJS编程中提交表单的方式
2015/06/19 Javascript
Labelauty?jQuery单选框/复选框美化插件分享
2015/09/26 Javascript
Jquery Mobile 自定义按钮图标
2015/11/18 Javascript
解析Javascript单例模式概念与实例
2016/12/05 Javascript
JS搜狐面试题分析
2016/12/16 Javascript
JavaScript中值类型和引用类型的区别
2017/02/23 Javascript
jQuery的$.extend 浅拷贝与深拷贝
2017/03/08 Javascript
JavaScript设置名字输入不合法的实现方法
2017/05/23 Javascript
详解vue的diff算法原理
2018/05/20 Javascript
JavaScript+H5实现微信摇一摇功能
2018/05/23 Javascript
小程序实现短信登录倒计时
2019/07/12 Javascript
微信小程序下拉加载和上拉刷新两种实现方法详解
2019/09/05 Javascript
详解Python中的序列化与反序列化的使用
2015/06/30 Python
python Django批量导入不重复数据
2016/03/25 Python
Python生成密码库功能示例
2017/05/23 Python
Linux CentOS Python开发环境搭建教程
2018/11/28 Python
Django框架使用内置方法实现登录功能详解
2019/06/12 Python
python实现五子棋人机对战游戏
2020/03/25 Python
python networkx 根据图的权重画图实现
2019/07/10 Python
解决Tensorflow sess.run导致的内存溢出问题
2020/02/05 Python
Python作用域与名字空间原理详解
2020/03/21 Python
Python爬虫爬取有道实现翻译功能
2020/11/27 Python
html5 figure和figcaption的使用方法
2018/09/10 HTML / CSS
KIKO MILANO俄罗斯官网:意大利领先的化妆品和护肤品品牌
2021/01/09 全球购物
麦当劳辞职信范文
2014/01/18 职场文书
领导干部廉政自律承诺书
2014/05/26 职场文书
道路交通事故赔偿协议书
2014/10/24 职场文书
故宫英文导游词
2015/01/31 职场文书
python中数组和列表的简单实例
2022/03/25 Python