python 写的一个url检测脚本,转成exe定时执行

#python2.7下编写。使用python abc.py py2exe 转成exe
#所以需要安装py2exe包
#filename:webmonitor.py

import os
import sys
import pycurl
import StringIO
import json
import time
import smtplib
import ConfigParser
from email.mime.text import MIMEText
from email.header import Header
#print pycurl.version_info()
cur_dir = os.path.dirname(os.path.abspath(sys.argv[0])) + "\"
cfg = ConfigParser.ConfigParser()
cfg.readfp(open(cur_dir + ‘abc.ini‘))

email_from = cfg.get("mail","from")
email_pwd = cfg.get("mail","password") #邮箱的授权码,不是邮箱密码
email_to = cfg.get("mail","to")
email_host = cfg.get("mail","host")
email_port = cfg.get("mail","port")
email_url = cfg.get("mail","url")

#print email_from,email_pwd,email_to,email_host,email_port
#print url
#exit(-10)

dt = time.strftime(‘%Y-%m-%d %H:%M:%S‘)
#fn_path = os.path.dirname(os.path.abspath(sys.argv[0])) + "\"
fn_dt = cur_dir + "abcmonitor"+time.strftime(‘%Y%m%d‘)+".log"
#print dt,fn_dt
#time.sleep(15)

fp = open(fn_dt,"a+")

c = pycurl.Curl()
c.setopt(c.URL,email_url)

try:
c.perform()

except Exception as e:
print("exception error :[%s]"%(e))
fp.write("%s:%s\r\n"%(dt,e))
finally:
c.close

ret = c.getinfo(c.HTTP_CODE)
#print("ret= %s" %(ret))
if ret == 200:
subject = ‘web ok‘
else:
subject = ‘web error‘
#print("subject="+subject)
fp.write("%s:%s\r\n"%(dt,subject))

mail_host = email_host
mail_user = email_from
mail_pass = email_pwd

sender = email_from
receivers = email_to
#print receivers
#exit(-1000)
message = MIMEText(‘abc.cn monitor‘)
message[‘From‘] = Header(email_from,‘utf-8‘)
message[‘To‘] = Header( email_to,‘utf-8‘)
message[‘subject‘] = Header(subject,‘utf-8‘)

try:
smtpobj = smtplib.SMTP_SSL(email_host,email_port)
smtpobj.login(mail_user,mail_pass)
smtpobj.sendmail(sender,receivers.split(","),message.as_string())
#print "mail ok"
except smtplib.SMTPException as em:
fp.write("MailSendError:%s"%(em))
#print "Error:mail fail"
finally:
smtpobj.quit()

c.close()
fp.close()



#以下是要转换成exe时,单独写一个py abc.py
from distutils.core import setup
import py2exe
import sys

setup(console=["webmonitor.py"])



配置文件一定要放到exe生成后的dist目录中。ini的格式如下br/>[mail]
[email protected]
password=abcbr/>[email protected],[email protected]
host=smtp.qq.com
port=465
url=
http://www.abc.cn

原文地址:https://blog.51cto.com/weiweiyong/2391433

时间: 2024-10-10 12:24:44

python 写的一个url检测脚本,转成exe定时执行的相关文章

Python写的一个优美的定时器,定时精度可调

# -* coding: utf-8 -*- import sys import os import getopt import threading import time def Usage(): usage_str = '''说明: \t定时器 \timer.py -h 显示本帮助信息,也可以使用--help选项 \timer.py -d num 指定一个延时时间(以毫秒为单位) \t 也可以使用--duration=num选项 ''' print(usage_str) def args_p

Python写了一个WC命令

Python 写了一个收发数据用的一个wc命令,更多学习交流请加365534424 ,直接上代码 #!/usr/bin/env python # coding:utf-8 # author: 51reboot.com # QQ群:365534424 from optparse import OptionParser import os class Wc(object):     def __init__(self):         self.n = 0              # line 

URL检测脚本

1.URL检测脚本 [[email protected] scripts]# vi check_url.sh  [[email protected] scripts]# cat check_url.sh  #!/bin/sh . /etc/init.d/functions function usage(){     echo $"usage:$0 url"     exit 1 } function check_url(){     wget --spider -q -o /dev/n

分享一个免杀的反弹shell工具(python脚本转换成exe)

有时候网站服务器上有杀毒软件,我们上传的nc.exe.lcx.exe等工具都被杀了,这时候就需要一款免杀的工具来反弹shell. 这篇博客主要是依据国外的一片文章翻译而来,根据国外大佬的教程将Python脚本转换成exe程序即可免杀. 参考链接:https://medium.com/bugbountywriteup/antivirus-evasion-with-python-49185295caf1 第1步:安装Python2.7和Py2exe 一定要安装32位的Python 2.7和32位的P

将Python脚本封装成exe可执行文件 转

将Python脚本封装成exe可执行文件 http://www.cnblogs.com/renzo/archive/2012/01/01/2309260.html cx_freeze是用来将 Python 脚本封装成可执行程序的工具,支持最新的Python3.2版本.生成的执行文件具有跨平台性,而且运行的系统无须安装Python.目前类似功能的工具还有py2exe 和 PyInstaller,其中貌似py2exe知名度最高了,但是很久没有更新了,至于打包质量不做评价,毕竟萝卜青菜各有所爱:PyI

把perl脚本编译成exe

来源:http://www.veryhuo.com/a/view/38338.html 今天想把 perl 脚本编译成 exe 以便脱离 perl 解释器独立运行.都可以生成PERL的PE文件,在PERL官网有介绍. perl脚本编译成exe 一般有4种方法: 1. 使用 perl2exe 工具(需要购买,当然也有破解版或绿色版,不过网上只找到5.0版本的,而我的是5.12版本,版本太低所以不能使用) exe文件体积大 运行慢 2. 使用 ActiveState 公司的 Perl Dev Kit

Shell脚本实现每个工作日定时执行指定程序

我们可能会遇到这样的情景:必须在每个工作日定时执行Linux服务器上的某个程序.那么有没有办法实现这一功能呢?答案是肯定的.我们可以运用Shell脚本简单实现这一功能. 原理很简单,Shell脚本内部每隔1秒查询一次当前时间.日期以及星期数,当检测到当前星期数week非0或6(0代表星期天,6代表星期六)且时间curTime大于指定时间startTime时,执行指定的程序program.为了保证每天仅执行一次指定程序program,还引用了变量isFirstTime做标记.具体代码如下: 1 #

python写的简单发送邮件的脚本【转】

近来有些东西需要监控报警发邮件,然后在网上找了点材料,自己写了一个简单发送邮件的脚本,主要就是运用python的smtplib模块,分享给大家看一下: #!/usr/bin/env python # -*- coding: utf-8 -*- #导入smtplib和MIMEText import smtplib,sys from email.mime.text import MIMEText def send_mail(sub,content): ############# #要发给谁,这里发给

python写的nginx切割日志脚本

#!/usr/bin/env pthon #_*_coding=utf-8_*_ #python版本(nginx日志切割脚本) import os import datetime #access.log路径 accesslogs_path = "/usr/local/nginx/logs/" #昨天的日期 lastDate = datetime.date.today() - datetime.timedelta(days=1) #备份路径 bak_path = "%s%s/%