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基础教程之获取本机ip数据包示例
Feb 10 Python
python数据结构之二叉树的统计与转换实例
Apr 29 Python
Python实现遍历数据库并获取key的值
May 17 Python
使用FastCGI部署Python的Django应用的教程
Jul 22 Python
Python3学习urllib的使用方法示例
Nov 29 Python
Python3.6简单反射操作示例
Jun 14 Python
python机器学习之KNN分类算法
Aug 29 Python
Python实现的特征提取操作示例
Dec 03 Python
python 实现敏感词过滤的方法
Jan 21 Python
python GUI库图形界面开发之PyQt5布局控件QGridLayout详细使用方法与实例
Mar 06 Python
python实时监控logstash日志代码
Apr 27 Python
python将数据插入数据库的代码分享
Aug 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
基于Windows下Apache PHP5.3.1安装教程
2010/01/08 PHP
PHP中文件缓存转内存缓存的方法
2011/12/06 PHP
使用openssl实现rsa非对称加密算法示例
2014/01/24 PHP
php删除指定目录的方法
2015/04/03 PHP
深入理解PHP之OpCode原理详解
2016/06/01 PHP
Laravel框架控制器的middleware中间件用法分析
2019/09/30 PHP
TNC vs IO BO3 第一场2.13
2021/03/10 DOTA
基于jquery的固定表头和列头的代码
2012/05/03 Javascript
Javascript操作cookie的函数代码
2012/10/03 Javascript
AngularJS基础知识笔记之表格
2015/05/10 Javascript
Wireshark基本介绍和学习TCP三次握手
2016/08/15 Javascript
基于JavaScript实现跳转提示页面
2016/09/24 Javascript
微信小程序 教程之注册程序
2016/10/17 Javascript
微信小程序 本地数据读取实例
2017/04/27 Javascript
Vue.js鼠标悬浮更换图片功能
2017/05/17 Javascript
ReactNative之键盘Keyboard的弹出与消失示例
2017/07/11 Javascript
vue2实现可复用的轮播图carousel组件详解
2017/11/27 Javascript
vue mint-ui tabbar变组件使用
2018/05/04 Javascript
vue中父子组件注意事项,传值及slot应用技巧
2018/05/09 Javascript
nodejs中实现修改用户路由功能
2019/05/24 NodeJs
微信小程序 生成携带参数的二维码
2019/10/23 Javascript
Python3之读取连接过的网络并定位的方法
2018/04/22 Python
详解python使用pip安装第三方库(工具包)速度慢、超时、失败的解决方案
2018/12/02 Python
基于Python实现用户管理系统
2019/02/26 Python
谈谈Python中的while循环语句
2019/03/10 Python
python控制nao机器人身体动作实例详解
2019/04/29 Python
python time.strptime格式化实例详解
2021/02/03 Python
英国123鲜花网站:123 Flowers
2019/07/07 全球购物
了解AppleTalk协议吗
2014/04/01 面试题
接受捐赠答谢词
2014/01/27 职场文书
小区物业门卫岗位职责
2014/04/10 职场文书
运动会表扬稿范文
2015/05/05 职场文书
2015年社区精神文明工作总结
2015/05/26 职场文书
廉洁自律证明
2015/06/24 职场文书
初中团支书竞选稿
2015/11/21 职场文书
详解CSS开发过程中的20个快速提升技巧
2021/05/21 HTML / CSS