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内置函数Type()函数一个有趣的用法
Feb 18 Python
介绍Python中的一些高级编程技巧
Apr 02 Python
使用Python3 编写简单信用卡管理程序
Dec 21 Python
Python内置函数 next的具体使用方法
Nov 24 Python
对Python中实现两个数的值交换的集中方法详解
Jan 11 Python
python字符串查找函数的用法详解
Jul 08 Python
Python搭建代理IP池实现接口设置与整体调度
Oct 27 Python
Python迭代器模块itertools使用原理解析
Dec 11 Python
python实现将range()函数生成的数字存储在一个列表中
Apr 02 Python
Python selenium爬取微信公众号文章代码详解
Aug 12 Python
pycharm 配置svn的图文教程(手把手教你)
Jan 15 Python
Python django中如何使用restful框架
Jun 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-cli简介(不会Shell语言一样用Shell)
2013/06/03 PHP
PHP实现恶意DDOS攻击避免带宽占用问题方法
2015/05/27 PHP
PHP+mysql实现从数据库获取下拉树功能示例
2017/01/06 PHP
在JavaScript中实现命名空间
2006/11/23 Javascript
window.location.hash 属性使用说明
2010/03/20 Javascript
jquery简单瀑布流实现原理及ie8下测试代码
2013/01/23 Javascript
Javascript中Array用法实例分析
2015/06/13 Javascript
JavaScript学习笔记之数组去重
2016/03/23 Javascript
jQuery实现鼠标选中文字后弹出提示窗口效果【附demo源码】
2016/09/05 Javascript
使用JS轻松实现ionic调用键盘搜索功能(超实用)
2016/09/06 Javascript
html判断当前页面是否在iframe中的实例
2016/11/30 Javascript
关于vue.js v-bind 的一些理解和思考
2017/06/06 Javascript
anime.js 实现带有描边动画效果的复选框(推荐)
2017/12/24 Javascript
在小程序中集成redux/immutable/thunk第三方库的方法
2018/08/12 Javascript
在vue中使用SockJS实现webSocket通信的过程
2018/08/29 Javascript
浅谈vue后台管理系统权限控制思考与实践
2018/12/19 Javascript
原生js实现随机点名
2020/07/05 Javascript
vue中全局路由守卫中替代this操作(this.$store/this.$vux)
2020/07/24 Javascript
Vue路由权限控制解析
2020/11/09 Javascript
[15:58]DOTA2国际邀请赛采访专栏:Tongfu.Sansheng&KingJ,DK.rOtk
2013/08/08 DOTA
[01:00:59]VP VS VG Supermajor小组赛胜者组第二轮 BO3第二场 6.2
2018/06/03 DOTA
python线程池的实现实例
2013/11/18 Python
python基于phantomjs实现导入图片
2016/05/13 Python
numpy np.newaxis 的实用分享
2019/11/30 Python
新建文件时Pycharm中自动设置头部模板信息的方法
2020/04/17 Python
Python Scrapy图片爬取原理及代码实例
2020/06/12 Python
Python sublime安装及配置过程详解
2020/06/29 Python
python接口自动化之ConfigParser配置文件的使用详解
2020/08/03 Python
python实现定时发送邮件
2020/12/23 Python
python 如何上传包到pypi
2020/12/24 Python
html5定位获取当前位置并在百度地图上显示
2014/08/22 HTML / CSS
24个canvas基础知识小结
2014/12/17 HTML / CSS
爱之链教学反思
2014/04/30 职场文书
党的群众路线对照检查材料
2014/09/22 职场文书
任命书格式模板
2015/09/22 职场文书
漫画「狩龙人拉格纳」公开TV动画预告图
2022/03/22 日漫