python通过zabbix api获取主机


Posted in Python onSeptember 17, 2018

zabbix强大地方在于有强大的api,zabbix 的api可以拿到zabbix大部分数据,目前我所需的数据基本可以通过api获取,以下是通过zabbix api获取的主机信息python代码,其他数据也如此类推,api使用方法可参见官网文档:

#!/usr/bin/env python
#-*- coding: utf-8 -*-
import json
import urllib2
from urllib2 import URLError
from login import zabbix_login
t=zabbix_login()
def hostid_get():
 data = json.dumps(
  {
   "jsonrpc": "2.0",
   "method": "host.get",
   "params": {
      "output": "extend",
      "groupids":14,
      "filter":{"flags": "4" },
      },
   "auth":t.user_login(),
   "id": 1,
  })
 request = urllib2.Request(t.url, data)
 for key in t.header:
  request.add_header(key, t.header[key])
 try:
  result = urllib2.urlopen(request)
 except URLError as e:
  if hasattr(e, 'reason'):
   print 'zabbix server is faile'
   print 'Reason: ', e.reason
  elif hasattr(e, 'code'):
   print 'zabbix server not request.'
   print 'Error code: ', e.code
 else:
  response = json.loads(result.read())
  result.close()
  hostid=[]
  hostname=[]
  for host in response['result']:
   hostid.append(host['hostid'])
   hostname.append(host['name'])
  return hostid,hostname
 
if __name__ == "__main__":
 a,b=hostid_get()
 i=0
 n=len(b)
 for i in range(n):
  print a[i],b[i]

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python处理PHP数组文本文件实例
Sep 18 Python
自己使用总结Python程序代码片段
Jun 02 Python
Python中列表、字典、元组数据结构的简单学习笔记
Mar 20 Python
python 请求服务器的实现代码(http请求和https请求)
May 25 Python
Python产生Gnuplot绘图数据的方法
Nov 09 Python
python 自动重连wifi windows的方法
Dec 18 Python
Python3模拟登录操作实例分析
Mar 12 Python
Python之NumPy(axis=0 与axis=1)区分详解
May 27 Python
Python namedtuple命名元组实现过程解析
Jan 08 Python
通过实例解析python描述符原理作用
Jan 22 Python
.img/.hdr格式转.nii格式的操作
Jul 01 Python
python实现经纬度采样的示例代码
Dec 10 Python
Python从ZabbixAPI获取信息及实现Zabbix-API 监控的方法
Sep 17 #Python
python实现Zabbix-API监控
Sep 17 #Python
centos6.8安装python3.7无法import _ssl的解决方法
Sep 17 #Python
Python从使用线程到使用async/await的深入讲解
Sep 16 #Python
推荐10款最受Python开发者欢迎的Python IDE
Sep 16 #Python
python3中os.path模块下常用的用法总结【推荐】
Sep 16 #Python
python os.path模块常用方法实例详解
Sep 16 #Python
You might like
php实现MySQL数据库备份与还原类实例
2014/12/09 PHP
Javascript操作URL函数修改版
2013/11/07 Javascript
javascript判断是否按回车键并解决浏览器之间的差异
2014/05/13 Javascript
JavaScript设计模式之原型模式(Object.create与prototype)介绍
2014/12/28 Javascript
jQuery中document与window以及load与ready 区别详解
2014/12/29 Javascript
JS实现点击按钮自动增加一个单元格的方法
2015/03/09 Javascript
IE10中flexigrid无法显示数据的解决方法
2015/07/26 Javascript
JS拖拽插件实现步骤
2015/08/03 Javascript
纯CSS3代码实现滑动开关效果
2015/08/19 Javascript
jQuery插件实现适用于移动端的地址选择器
2016/02/18 Javascript
COM组件中调用JavaScript函数详解及实例
2017/02/23 Javascript
jQuery Pagination分页插件使用方法详解
2017/02/28 Javascript
史上最全JavaScript常用的简写技巧(推荐)
2017/08/17 Javascript
vue mint-ui 实现省市区街道4级联动示例(仿淘宝京东收货地址4级联动)
2017/10/16 Javascript
JavaScript模块详解
2017/12/18 Javascript
webpack css加载和图片加载的方法示例
2018/09/11 Javascript
微信小程序实现留言板
2018/10/31 Javascript
vue+SSM实现验证码功能
2018/12/07 Javascript
vueScroll实现移动端下拉刷新、上拉加载
2019/03/22 Javascript
如何让Nodejs支持H5 History模式(connect-history-api-fallback源码分析)
2019/05/30 NodeJs
适合前端Vue开发童鞋的跨平台Weex的使用详解
2019/10/16 Javascript
vue 内联样式style中的background用法说明
2020/08/05 Javascript
pandas apply 函数 实现多进程的示例讲解
2018/04/20 Python
Python实现针对给定字符串寻找最长非重复子串的方法
2018/04/21 Python
python解决字符串倒序输出的问题
2018/06/25 Python
Python3.5内置模块之os模块、sys模块、shutil模块用法实例分析
2019/04/27 Python
python opencv实现图像配准与比较
2021/02/09 Python
详解CSS3新增的背景属性
2019/12/25 HTML / CSS
HTML5 canvas 基本语法
2009/08/26 HTML / CSS
美国羽绒床上用品第一品牌:Pacific Coast
2018/08/25 全球购物
什么是静态路由,其特点是什么?什么是动态路由,其特点是什么?
2013/07/26 面试题
理工大学毕业生自荐信
2013/11/01 职场文书
现金出纳岗位职责
2014/03/15 职场文书
户外拓展训练感想
2015/08/07 职场文书
Python实战之实现康威生命游戏
2021/04/26 Python
Java SSH 秘钥连接mysql数据库的方法
2021/06/28 Java/Android