#coding=gbk
import os
import re
import urllib2
import smtplib
import time
from time import localtime,strftime
#################参数设置######################
#邮箱用户名
username = ""
#邮箱密码
password = ""
#smtp服务器
mailserver = ""
#smtp服务器端口
port = "25"
#执行间隔,单位秒
interval = 180
#发件地址
from_addr = ""
#收件地址
to_addr = ""
#是否打开debug(0关闭,1打开)
debuglevel = 0
################################################
running = True
hostname = os.environ['COMPUTERNAME']
lastip = "0.0.0.0"
while running:
#获得公网IP
pagereturn = urllib2.urlopen("http://www.net.cn/static/customercare/yourIP.asp").read()
#print pagereturn
#截取IP地址
obj = re.search('(\d+)\.(\d+)\.(\d+)\.(\d+)',pagereturn)
#print obj
ip = obj.group(0)
print "程序运行中,主机当前广域网IP为:" + ip
#比较当前IP与之前IP是否相同,如不同则发送邮件
if ip <> lastip:
lastip = ip
now = strftime("%Y-%m-%d %H:%M:%S", localtime())
subject = now + " 主机: " + hostname + " 当前IP地址为: " + ip
content = now + " 主机: " + hostname + " 当前IP地址为: " + ip
smtp = smtplib.SMTP()
smtp.set_debuglevel(debuglevel)
smtp.connect(mailserver, port)
smtp.login(username, password)
smtp.sendmail(from_addr, to_addr, 'From: ' + from_addr + '\r\nTo: ' + to_addr + '\r\nSubject: ' + subject + '\r\n\r\n' + content)
smtp.quit()
time.sleep(interval)
分享到:
相关推荐
mailproxy是一个简单的SMTP代理。 它通过未加密的未经身份验证的SMTP接口接收电子邮件,并通过需要现代功能(SSL,STARTTLS)和/或身份验证(SMTP AUTH))的远程SMTP服务器重新发送。 mailproxy主要用于在仅支持纯...
在IT行业中,Python是一种强大的编程语言,尤其在处理文本数据和自动化任务方面表现突出。本话题涉及的是使用Python编写一个电子邮件下载器,该工具能够将邮件以EML(电子消息库)格式保存到本地计算机。EML文件是一...
**pdf-mailmerge: 简单的命令行Python邮件合并到PDF** 在IT行业中,有时候我们需要将批量的个性化数据合并到一个PDF模板中,形成多个带有不同数据的PDF文档,这个过程被称为邮件合并。`pdf-mailmerge`是一个方便的...
在这个场景中,我们关注的是一个名为"python_mail"的库,版本为1.0.1,它被打包成一个`.tar.gz`文件。`.tar.gz`是一种常见的压缩格式,用于归档和分发软件包,它结合了tar(用于打包多个文件)和gzip(用于压缩)的...
《Python库pycontw_mail_handler-0.3.0-py3-none-any.whl详解》 在Python的生态系统中,库扮演着至关重要的角色,它们为开发者提供了丰富的功能,简化了编程过程。本文将深入探讨名为`pycontw_mail_handler`的...
python mail3.py runserver --host 0.0.0.0 ``` 这表示服务将监听所有网络接口,并且可以在任何能够 ping 通服务器 IP 的主机上访问该服务,例如 `192.168.0.50:5000`。 #### 七、总结 通过上述步骤,我们不仅可以...
"Email_search:用于电子邮件搜索的纯Python脚本"是一个专为这个目的设计的工具,它完全基于Python编程语言,无需依赖外部库,使用户能够方便地在互联网上查找特定领域的电子邮件地址。 在Python中,实现这样的功能...
### Python如何通过Flask-Mail发送电子邮件 #### 一、引言 随着互联网技术的发展,电子邮件作为最常用的通信手段之一,在日常工作中发挥着重要的作用。在Web应用开发领域,特别是使用Python进行开发时,能够集成...
要实现这一功能,可以使用Python编程语言,结合第三方库如`imaplib`和`email`。 1. **设置环境**: 在Python环境中,首先确保已经安装了`imaplib`库,如果没有,可以通过`pip install imaplib`进行安装。同时,`...
在【Mail merge邮件合并实例】中,我们关注的是如何使用Aspose库在.NET环境中实现这一功能。 Aspose是一个强大的文件处理组件,提供了多种编程语言的支持,包括C#。它允许开发者在不依赖Microsoft Office的情况下,...
在Python编程语言中,"Python-Mail-Merge-Project"是一个典型的项目,旨在教授用户如何使用Python进行邮件合并操作。邮件合并是一项实用技能,它允许程序员批量生成个性化文档,如信件、电子邮件或报告,其中包含...
Python-Mail-in-a-Box 是一个基于 Python 开发的开源项目,旨在简化个人邮件服务器的部署过程。这个项目将复杂的邮件服务器配置集成为一个简单的命令行工具,使得非专业技术人员也能轻松设置自己的邮件服务,从而...
**Python邮件处理与排序系统——pympsort** pympsort是一个用Python编写的高效邮件处理和排序工具。它专门设计用于从标准输入接收邮件,并利用配置文件进行智能管理和分类。这款开源软件旨在简化电子邮件的管理工作...
Python_gnupg_mail是一个基于Python的库,用于在GnuPG(GNU Privacy Guard)的保护下处理电子邮件。这个库的版本是0.0.1,适用于Python 3环境,且不受特定平台限制(any表示可以在任何平台上运行)。在Python生态...
- `mailServer`通常是一个已经登录的SMTP(简单邮件传输协议)客户端,可以使用Python的`smtplib`库创建。`mailServer.stat()`返回邮件总数,这在初始化二分查找时很有用。 - `mailServer.retr(cn)`用于获取指定...
Python是一种广泛使用的高级编程语言,它以其易读性和简洁的语法而受到开发者的喜爱。在Python编程中,网络编程是一个重要的领域,特别是利用Python发送电子邮件。Python标准库提供了丰富的模块,使得发送带有多张...
一个调用第三方SMTP发送邮件的python脚本,只需要将邮箱用户名等邮件信息修改就可以实现通过python发邮件。python版本2.7适用
Python KNN算法在垃圾邮件分类中的应用 在现代生活中,电子邮件已经成为我们日常沟通的重要工具,但随之而来的是垃圾邮件的问题。为了有效地管理收件箱,防止垃圾邮件的干扰,垃圾邮件分类成为了一项重要的任务。...
Python-docx是一个强大的Python库,专门用于处理Microsoft Word文档,如创建、编辑和读取.docx格式的文件。这个库允许开发者在不依赖Microsoft Office的情况下,通过编程方式操作Word文档,极大地扩展了Python在文档...
Python邮件发送模块是Python编程中一个非常实用的功能,它允许我们自动发送电子邮件,这对于自动化报告、通知服务或者定期任务的提醒来说非常有用。在Python中,我们可以使用内置的`smtplib`和`email`库来实现这个...