python 自动登陆cacti获取主机流量图

#/usr/bin/env python
# -*- coding: utf-8 -*- 
import time,datetime,socket,urllib,urllib2,cookielib
#由于我是今天去取上周一的时间所以这里写成10,时间应该是2014年11月24上周星期一,
threeDayAgo = (datetime.datetime.now() - datetime.timedelta(days = 10)) 
#时间格式化输出,由于cacti里面的时间是以时间戳计算的我方便转换成时间戳
otherStyleTime = threeDayAgo.strftime("%Y-%m-%d %H:%M:%S") 
print otherStyleTime
#由于上面取到的时间是以当前的时间跟日期,但是我cacti里面出图的时间应该从00:00:00开始,所以转换
format_otherStyleTime = "%s 00:00:00" % otherStyleTime.split()[0]
print format_otherStyleTime
start=time.mktime(time.strptime(format_otherStyleTime,‘%Y-%m-%d %H:%M:%S‘))
print start

threeDayAgo = (datetime.datetime.now() - datetime.timedelta(days = 4))
otherStyleTime = threeDayAgo.strftime("%Y-%m-%d %H:%M:%S")
print otherStyleTime
result = "%s 00:00:00" % otherStyleTime.split()[0]
print result
end=time.mktime(time.strptime(result,‘%Y-%m-%d %H:%M:%S‘))

print end


socket.setdefaulttimeout(10)
headers={}
cookiejar = cookielib.CookieJar()
urlOpener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cookiejar))

# login
values = {‘action‘:‘login‘, ‘login_username‘:‘用户名‘,‘login_password‘:‘密码‘ }
data = urllib.urlencode(values)
request = urllib2.Request("http://ip地址/cacti/index.php", data ,headers)
res = urlOpener.open(request).read()

#get image
request = urllib2.Request("http://ip地址/cacti/graph_image.php?local_graph_id=31&rra_id=0&view_type=tree&graph_start=%s&graph_end=%s"%(int(start),int(end)), None ,headers)
res = urlOpener.open(request).read()

# save image to file
file_object = open(‘186-1week.png‘, ‘wb‘)
file_object.write(res)
file_object.close()


本文出自 “服务器” 博客,请务必保留此出处http://zhangfang2012.blog.51cto.com/6380212/1586389

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。