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中的装饰器、闭包和functools的教程
Apr 02 Python
Linux(Redhat)安装python3.6虚拟环境(推荐)
May 05 Python
Python初学者需要注意的事项小结(python2与python3)
Sep 26 Python
Python2和Python3中urllib库中urlencode的使用注意事项
Nov 26 Python
python接口自动化(十六)--参数关联接口后传(详解)
Apr 16 Python
从列表或字典创建Pandas的DataFrame对象的方法
Jul 06 Python
python实现生成Word、docx文件的方法分析
Aug 30 Python
Python嵌套函数,作用域与偏函数用法实例分析
Dec 26 Python
用python爬取历史天气数据的方法示例
Dec 30 Python
python Canny边缘检测算法的实现
Apr 24 Python
Django Model中字段(field)的各种选项说明
May 19 Python
opencv 图像腐蚀和图像膨胀的实现
Jul 07 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之短标签开启设置
2013/06/17 PHP
PHP GD库生成图像的几个函数总结
2014/11/19 PHP
PHP中file_get_contents函数抓取https地址出错的解决方法(两种方法)
2015/09/22 PHP
thinkphp配置文件路径的实现方法
2016/08/30 PHP
PHP使用curl_multi实现并发请求的方法示例
2018/04/29 PHP
ExtJs扩展之GroupPropertyGrid代码
2010/03/05 Javascript
JS性能优化笔记搜索整理
2013/08/21 Javascript
JavaScript中为什么null==0为false而null大于=0为true(个人研究)
2013/09/16 Javascript
DIV始终居中的js代码
2014/02/17 Javascript
jquery动态添加元素事件失效问题解决方法
2014/05/23 Javascript
多个checkbox被选中时如何判断是否有自己想要的
2014/09/22 Javascript
jQuery插件Easyui设置datagrid的pageNumber导致两次请求问题的解决方法
2016/08/06 Javascript
浅析Jquery操作select
2016/12/13 Javascript
vue 文件目录结构详解
2017/11/24 Javascript
Vue.js组件间的循环引用方法示例
2017/12/27 Javascript
Vue与Node.js通过socket.io通信的示例代码
2018/07/25 Javascript
详解vue-cli3使用
2018/08/14 Javascript
详解vue 数组和对象渲染问题
2018/09/21 Javascript
vue实现与安卓、IOS交互的方法
2018/11/02 Javascript
微信小程序 JS动态修改样式的实现方法
2018/12/16 Javascript
Vue简单实现原理详解
2020/05/07 Javascript
关于uniApp editor微信滑动问题
2021/01/15 Javascript
python实现简单温度转换的方法
2015/03/13 Python
详解常用查找数据结构及算法(Python实现)
2016/12/09 Python
python利用拉链法实现字典方法示例
2017/03/25 Python
python list删除元素时要注意的坑点分享
2018/04/18 Python
python+requests接口自动化框架的实现
2020/08/31 Python
80年代复古T恤:TruffleShuffle
2018/07/02 全球购物
介绍一下XMLHttpRequest对象的常用方法和属性
2013/05/24 面试题
医学毕业生自荐信
2013/10/11 职场文书
先进集体事迹材料
2014/02/17 职场文书
团支书竞选演讲稿
2014/04/28 职场文书
中学生爱国演讲稿
2014/09/05 职场文书
开展党的群众路线教育实践活动情况汇报
2014/11/05 职场文书
《浅水洼里的小鱼》教学反思
2016/02/16 职场文书
小学语文课《掌声》教学反思
2016/03/03 职场文书