当前位置: 首页 > news >正文

男的做直播哪个网站永久链接生成器

男的做直播哪个网站,永久链接生成器,有没有专门做京东天猫的人才网站,做网站和网页利用python实现基本的邮件发送。 感谢以下博客的整理#xff0c;本人在学习的同时也做了一些整理 一、相关模块介绍 发送邮件主要用到了smtplib和email两个模块#xff0c;这里首先就两个模块进行一下简单的介绍#xff1a; 1、smtplib模块 smtplib.SMTP([host[, port[, loc…利用python实现基本的邮件发送。 感谢以下博客的整理本人在学习的同时也做了一些整理 一、相关模块介绍 发送邮件主要用到了smtplib和email两个模块这里首先就两个模块进行一下简单的介绍 1、smtplib模块 smtplib.SMTP([host[, port[, local_hostname[, timeout]]]]) SMTP类构造函数表示与SMTP服务器之间的连接通过这个连接可以向smtp服务器发送指令执行相关操作如登陆、发送邮件。所有参数都是可选的。 hostsmtp服务器主机名 portsmtp服务的端口默认是25如果在创建SMTP对象的时候提供了这两个参数在初始化的时候会自动调用connect方法去连接服务器。 smtplib模块还提供了SMTP_SSL类和LMTP类对它们的操作与SMTP基本一致。 smtplib.SMTP提供的方法 SMTP.set_debuglevel(level)设置是否为调试模式。默认为False即非调试模式表示不输出任何调试信息。 SMTP.connect([host[, port]])连接到指定的smtp服务器。参数分别表示smpt主机和端口。注意: 也可以在host参数中指定端口号如smpt.yeah.net:25这样就没必要给出port参数。 SMTP.docmd(cmd[, argstring])向smtp服务器发送指令。可选参数argstring表示指令的参数。 SMTP.helo([hostname]) 使用helo指令向服务器确认身份。相当于告诉smtp服务器“我是谁”。 SMTP.has_extn(name)判断指定名称在服务器邮件列表中是否存在。出于安全考虑smtp服务器往往屏蔽了该指令。 SMTP.verify(address) 判断指定邮件地址是否在服务器中存在。出于安全考虑smtp服务器往往屏蔽了该指令。 SMTP.login(user, password) 登陆到smtp服务器。现在几乎所有的smtp服务器都必须在验证用户信息合法之后才允许发送邮件。 SMTP.sendmail(from_addr, to_addrs, msg[, mail_options, rcpt_options]) 发送邮件。这里要注意一下第三个参数msg是字符串表示邮件。我们知道邮件一般由标题发信人收件人邮件内容附件等构成发送邮件的时候要注意msg的格式。这个格式就是smtp协议中定义的格式。 SMTP.quit()断开与smtp服务器的连接相当于发送quit指令。也有用到smtp.close() 使用smtplib库发送邮件的基本步骤 #连接到SMTP服务器参数表示SMTP主机和端口端口默认25 SMTP.connect([host[,port]]) #也可以不显式链接SMTP(host) #登录SMTP服务器 SMTP.login(user,password) #发送邮件。.as_string()是字符串表示邮件内容to_addrs是收件人list SMTP.sendmail(from_addr, to_addrs, msg.as_string()) #断开连接 SMTP.close() #也有用SMTP.quit() 2、email模块 Email库用来处理邮件消息。包括MIME和基于RFC2822的消息文档。 有关MIME的一些知识 RFC2822定义的邮件格式中邮件体只是单纯的ASCII编码的字符序列MIME扩展邮件的格式用以支持非ASCII编码的文本、非文本附件及包含多个部分multi-part的邮件体。 MIME消息由消息头、消息体组成即邮件的邮件头、邮件体。中间以空行进行分隔。 1、邮件头包括发件人(from)、收件人(to)、邮件主题(subject)、接收日期(date)、MIME版本、邮件内容类型等信息。每条信息称为一个域由域名后加“:”和信息内容构成域的首行必须顶头写。 2、邮件体有text/plain(纯文本)和text/html(超文本)之分由邮件头的“content type”域指出。可以同时存在也可以只存在一种。这就是为什么有些邮件既可以用html格式查看又可以用文本格式查看的原因。邮件体分为多个段称为Payload。每个段也包括段头段尾中间以空行分隔。multipart类型有3种multipart/mixed multipart/related multipart/alternative。邮件里添加附件要定义multipart/mixed段如果纯文本超文本共存则要定义multipart/alternative如存在内嵌资源要定义multipart/related。 3、附件(attach)。发送邮件时可以将本机的文件一起发送。附件可以有0个或多个只要附件的总大小不超过邮件服务器所声明的最大容量。 4、 包括的类主要有更加详细的介绍可见 http://docs.python.org/library/email.mime.html class email.mime.text.MIMEText(_text[, _subtype[, _charset]]) 用于生成MIME对象的主体文本_text指定邮件内容_subtype指定邮件类型_charset指定编码。 class email.mime.multipart.MIMEMultipart() 用于生成包含多个部分的邮件体的MIME对象 class email.mime.base.MIMEBase(_maintype, _subtype, **_params) 这是MIME的一个基类。一般不需要在使用时创建实例。其中_maintype是内容类型如text或者image。_subtype是内容的minor type 类型如plain或者gif。 **_params是一个字典直接传递给Message.add_header()。 class email.mime.multipart.MIMEMultipart([_subtype[, boundary[, _subparts[, _params]]]] MIMEBase的一个子类多个MIME对象的集合_subtype默认值为mixed。boundary是MIMEMultipart的边界默认边界是可数的。 class email.mime.application.MIMEApplication(_data[, _subtype[, _encoder[, **_params]]]) MIMEMultipart的一个子类。 class email.mime.audio. MIMEAudio(_audiodata[, _subtype[, _encoder[, **_params]]]) MIME音频对象 class email.mime.image.MIMEImage(_imagedata[, _subtype[, _encoder[, **_params]]]) MIME二进制文件对象。 class email.mime.message.MIMEMessage(_msg[, _subtype]) 具体的一个message实例使用方法如下 msgmail.Message.Message() #一个实例 msg[to]XXXXXX.com #发送到哪里 msg[from]YYYYYY.com #自己的邮件地址 msg[date]2013-5-25 #时间日期 msg[subject]hello python #邮件主题 class email.mime.text.MIMEText(_text[, _subtype[, _charset]]) MIME文本对象其中_text是邮件内容_subtype邮件类型可以是text/plain普通文本邮件html/plain(html邮件), _charset编码可以是gb2312等等。 三、几种邮件的具体实现代码 1.普通文本和html邮件的发送 普通文本邮件发送的实现关键是要将MIMEText中_subtype设置为plain。首先导入smtplib和mimetext。创建smtplib.smtp实例connect邮件smtp服务器login后发送. html信息发送和普通文本一样conten内容变为html信息并将_subtype设置为html。 具体代码如下(python 2.7) #import getpass #如果需要交互获取密码 #pwd_input getpass.getpass(Password:) import time import smtplib import email.utils from email.mime.text import MIMEText #Initialize mail information #mailto_list [XXX163.com,YYYqq.com] mail_host smtp.163.com #设置网易163服务器 mail_user ZZZ #用户名 mail_pass ********* #口令 mail_postfix 163.com #发件箱后缀 mail_from .join([mail_user,mail_postfix]) #收件箱 #Create the message #html信息 #content Dyllian使用程序给你发了个链接 #msg MIMEText(content,_subtypehtml,_charsetutf8) #普通文本 content Hello dyllian msg MIMEText(content,_subtypeplain,_charsetutf8) msg[From] email.utils.formataddr((Author,mail_from)) #str type msg[To] email.utils.formataddr((Recipient,mailto_list)) #mail to list msg[Subject] Test from python! msg[date]time.strftime(%a, %d %b %Y %H:%M:%S %z)#定义发送时间不定义的可能有的邮件客户端会不显示发送时间 #msg.preamble This is a common message in MIME format. #Send mail to list recipient try: server smtplib.SMTP(mail_host) server.login(mail_user,mail_pass) server.sendmail(mail_from,mailto_list,msg.as_string()) #mail to list recipient except Exception,e: #try中有异常则执行 print Mail passed unsuccessfully!\n,str(e) else: #try中没有异常则执行 print Mail passed successfully! finally: #try中有无异常都执行 server.close() 2.带附件的邮件发送(附件图片附件一般文件) import os import time import smtplib import email.utils from email.mime.text import MIMEText from email.mime.image import MIMEImage from email.mime.multipart import MIMEMultipart #Get local path path os.path.dirname(__file__) #Initialize mail infomation #mailto_list [XXX163.com,YYYqq.com] mailto_list [XXX163.com] mail_host smtp.163.com #设置服务器 mail_user ZZZ #用户名 mail_pass ****** #口令 mail_postfix 163.com #发件箱后缀 mail_from .join([mail_user,mail_postfix]) #收件箱 #构建一个带附件的实例 msg MIMEMultipart() #用MIMEImage附件图片 fp open(path\\ning1.jpg, rb) msgImage MIMEImage(fp.read()) fp.close() msgImage.add_header(Content-ID, ) msg.attach(msgImage) #构造附件1图片 att1 MIMEText(open(path\\ning1.jpg,rb).read(),_subtypebase64,_charsetutf8) att1[Content-Type] application/octet-stream att1[Content-Disposition] attachment; filenameningning1.jpg #这里的filename可以随便取写什么名字邮件中显示什么名字 msg.attach(att1) #构造附件2文件 att2 MIMEText(open(path\\ning2.txt,rb).read(),_subtypebase64,_charsetutf8) att2[Content-Type] application/octet-stream att2[Content-Disposition] attachment; filenametest2.txt msg.attach(att2) #加邮件头 msg[From] email.utils.formataddr((Author,mail_from)) #str type msg[To] email.utils.formataddr((Recipient,mailto_list)) #mail to list msg[Subject] Test from python! msg[date]time.strftime(%a, %d %b %Y %H:%M:%S %z)#定义发送时间不定义的可能有的邮件客户端会不显示发送时间 #msg.preamble This is a multi-part message in MIME format. #Send mail to list recipient try: server smtplib.SMTP(mail_host) server.login(mail_user,mail_pass) server.sendmail(mail_from,mailto_list,msg.as_string()) #mail to list recipient except Exception,e: #try中有异常则执行 print Mail passed unsuccessfully!\n,str(e) else: #try中没有异常则执行 print Mail passed successfully! finally: #try中有无异常都执行 server.close() 四遇到的问题 希望在邮件正文中显式图片信息思路是用html属性发送查了几个资料遇到了同样的问题 1.如果做以下处理结果还是以附件的形式发送图片 #构建一个带附件的实例 msg MIMEMultipart(ralated) #用MIMEImage附件图片 fp open(path\\ning1.jpg, rb) msgImage MIMEImage(fp.read()) fp.close() msgImage.add_header(Content-ID, ) msg.attach(msgImage) 2.如果做以下的处理结果有编译错误 import os import smtplib import email.utils from email.mime.text import MIMEText from email.mime.image import MIMEImage from email.mime.multipart import MIMEMultipart #Get local path path os.path.dirname(__file__) #Initialize mail infomation mailto_list [XXX163.com] mail_host smtp.163.com #设置服务器 mail_user YYY #用户名 mail_pass ****** #口令 mail_postfix 163.com #发件箱后缀 mail_from .join([mail_user,mail_postfix]) #收件箱 #构建一个带附件的实例 msg MIMEMultipart(ralated) #html附带图片正文 msgAlternative MIMEMultipart(alternative) msg.attach(msgAlternative) html 本邮件,正文中显示图片 htmlText MIMEText(html,_subtypehtml,_charsetutf8) msgAlternative.attach(htmlText) #内置图片 fp open(path\\ning1.jpg,rb) msgImage MIMEImage(fp.read()) fp.close() msgImage.add_header(Content-ID,) msg.attach(msgImage) #加邮件头 msg[From] email.utils.formataddr((Author,mail_from)) #str type msg[To] email.utils.formataddr((Recipient,mailto_list)) #mail to list msg[Subject] Test from python! msg.preamble This is a multi-part message in MIME format. #Send mail to list recipient try: server smtplib.SMTP(mail_host) server.login(mail_user,mail_pass) server.sendmail(mail_from,mailto_list,msg.as_string()) #mail to list recipient except Exception,e: #try中有异常则执行 print Mail passed unsuccessfully!\n,str(e) else: #try中没有异常则执行 print Mail passed successfully! finally: #try中有无异常都执行 server.close() 编译结果 Mail passed unsuccessfully! (554, DT:SPM smtp11, D8CowEDp5XJrPKBR0ATQBg--.765S2 1369455724 http://mail.163.com/help/help_spam_16.htm?ip61.150.43.98hostidsmtp11time1369455724) 不知道哪里出了错哪位可能提供思路解决谢谢
http://www.pierceye.com/news/620650/

相关文章:

  • 仿站 做网站网站备案 图标
  • 网站怎么做留言提交功能wordpress个人支付接口
  • 有哪些做室内设计好用的网站廊坊网站制作推广
  • 做村易通网站站长要收费吗?elegant wordpress
  • 网站建设专业培训网站开发网页加载缓慢查询数据库慢
  • 网站开发中 视频播放卡做soho建立网站
  • 面试网站开发员安徽建工集团网站
  • 公司制作网站价格表app系统开发费用
  • 网站建设需要学什么h5海报是怎么做出来的
  • 西平企业网站建设美媒中国或已建立了51区
  • 柯城区住房和城乡建设局网站免费搭建淘宝客网站
  • 低价机票 网站建设网站模板
  • 手机网站建设的教程视频做的网站怎么放在网上
  • 做视频网站视频空间设计是什么
  • 怎么把网站推广wordpress 百万数据
  • 乐陵市人力资源中心网站网站的内容和功能
  • wordpress网站搬家图片路径做网站的算什么行业
  • 个人网站logo重庆网络优化平台
  • 河南 网站建设静态网站是什么意思
  • 上海正规做网站公司电话基于flash网站设计
  • 每个城市建设规划在哪个网站wordpress 无法安装主题
  • 自建网站做外贸谷歌推广网站内部资源推广方法
  • 网站数据库5g一个人看的免费视频高清直播
  • 怎么做网站注册推广泰州网站建设费用
  • 找南阳建立网站的公司网址大全最新版的
  • 网站建设与维护就业前景小程序开发外包注意事项
  • 胶州网站建设哪里有天润网站建设
  • 网站备案 怎么加搜索引擎网站建设
  • 做外贸自己开公司网站网站建设三个友好
  • 深圳高端品牌网站设计网站建设实训报告收获