设为首页 加入收藏

TOP

Python 使用httplib模块实现监测web服务
2014-11-24 03:17:13 来源: 作者: 【 】 浏览:1
Tags:Python 使用 httplib 模块 实现 监测 web 服务

httplib_check_web.py


#!/usr/bin/env python


import httplib


import sys


def check_webserver(address, port, resource):


if not resource.startswith('/'):


resource = '/' + resource


try:


conn = httplib.HTTPConnection(address, port)


print 'HTTP connection created successfully'


req = conn.request('GET', resource)


print 'request for %s successful' % resource


response = conn.getresponse()


print 'response status: %s' % response.status


except httplib.error, e:


print "HTTP connection failed: %s" % e


return False


finally:


conn.close()


print 'HTTP connection closed successfully'


if response.status in [200, 301]:


return True


else:


return False


if __name__ == '__main__':


from optparse import OptionParser


parser = OptionParser()


parser.add_option("-a", "--address", dest="address", default="localhost", help="ADDRESS for webserver", metavar="ADDRESS")


parser.add_option("-p", "--port", dest="port", type="int", default=80, help="PORT for webserver", metavar="PORT")


parser.add_option("-r", "--resource", dest="resource", default="index.html", help="RESOURCE to check", metavar="RESOURCE")


(options, args) = parser.parse_args()


print 'options: %s, args: %s' %(options, args)


check = check_webserver(options.address, options.port, options.resource)


print 'check_webserver returned %s' % check


sys.exit(not check)



运行结果:


成功


options: {'resource': 'index.html', 'port': 80, 'address': '192.168.137.2'}, args: []


HTTP connection created successfully


request for /index.html successful


response status: 200


HTTP connection closed successfully


check_webserver returned True


不成功,网页不存在的情况


[root@centos python]# python httplib_check_web.py -a 192.168.137.2 -r ppp.html


options: {'resource': 'ppp.html', 'port': 80, 'address': '192.168.137.2'}, args: []


HTTP connection created successfully


request for /ppp.html successful


response status: 404


HTTP connection closed successfully


check_webserver returned False


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇Python实现简单xml-rpc服务器 下一篇Android编程心得-图片自适应心得

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·哈希表 - 菜鸟教程 (2025-12-24 20:18:55)
·MySQL存储引擎InnoDB (2025-12-24 20:18:53)
·索引堆及其优化 - 菜 (2025-12-24 20:18:50)
·Shell 中各种括号的 (2025-12-24 19:50:39)
·Shell 变量 - 菜鸟教 (2025-12-24 19:50:37)