python学习中遇到的错误及解决办法

1. nodename nor servname provided

原因:Python程序中有段程序调用

   socket.gethostbyname(socket.gethostname())

 socket.gethostname()获取到主机名,但是socket.gethostbyname()函数无法获取主机名对应的IP地址,所以报错

解决办法:本地通过print socket.gethostname()拿到主机名,然后再本地的hosts文件中添加主机名和本地IP地址的映射

2. Envolope sender mismatch with header from

 原因:学习发送邮件,sendmail的发送消息体中没有From关键要素,所以报错

   msg = MIMEText(content, "plain", _charset='utf-8')
msg['Subject'] = Header(subject, 'utf-8')
msg["From"] = mail_from

解决办法:如上所示,构造消息体中添加From要素,表示发件人,不能为空,然后调用服务发送邮件

     smtp.sendmail(mail_from,mail_to,msg.as_string())

    

上一篇:Ubuntu 14.04 静态IP设置


下一篇:【转】c++面试基础