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实例分享:快速查找出被挂马的文件
Jun 08 Python
python中遍历文件的3个方法
Sep 02 Python
浅谈python函数之作用域(python3.5)
Oct 27 Python
python 获取文件下所有文件或目录os.walk()的实例
Apr 23 Python
python使用RNN实现文本分类
May 24 Python
pycharm debug功能实现跳到循环末尾的方法
Nov 29 Python
详解用python自制微信机器人,定时发送天气预报
Mar 25 Python
使用Pandas的Series方法绘制图像教程
Dec 04 Python
python GUI库图形界面开发之PyQt5窗口控件QWidget详细使用方法
Feb 26 Python
基于Python共轭梯度法与最速下降法之间的对比
Apr 02 Python
Python使用DFA算法过滤内容敏感词
Apr 22 Python
Python自动操作神器PyAutoGUI的使用教程
Jun 16 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中改变图片的尺寸大小的代码
2011/07/17 PHP
PHP连接MySQL查询结果中文显示乱码解决方法
2013/10/25 PHP
PHP连接操作access数据库实例
2015/03/30 PHP
Yii框架批量插入数据扩展类的简单实现方法
2017/05/23 PHP
在Yii2特定页面如何禁用调试工具栏Debug Toolbar详解
2017/08/07 PHP
javascript格式化日期时间方法汇总
2015/06/19 Javascript
JavaScript中数据结构与算法(五):经典KMP算法
2015/06/19 Javascript
谈谈JavaScript异步函数发展历程
2015/09/29 Javascript
jQuery插件实现静态HTML验证码校验
2015/11/06 Javascript
js实现的彩色方块飞舞奇幻效果
2016/01/27 Javascript
基于JavaScript实现百叶窗动画效果不只单纯flas可以实现
2016/02/29 Javascript
巧方法 JavaScript获取超链接的绝对URL地址
2016/06/14 Javascript
Bootstrap Validator 表单验证
2016/07/25 Javascript
浅谈时钟的生成(js手写简洁代码)
2016/08/20 Javascript
js内置对象处理_打印学生成绩单的简单实现
2016/09/24 Javascript
js 转json格式的字符串为对象或数组(前后台)的方法
2016/11/02 Javascript
JS实现提交表单前的数字及邮箱校检功能
2017/11/13 Javascript
Gulp实现静态网页模块化的方法详解
2018/01/09 Javascript
js计算最大公约数和最小公倍数代码实例
2019/09/11 Javascript
微信小程序实现多行文字滚动
2020/11/18 Javascript
Python进程间通信用法实例
2015/06/04 Python
Python利用正则表达式实现计算器算法思路解析
2018/04/25 Python
Python批处理更改文件名os.rename的方法
2018/10/26 Python
对Python实现简单的API接口实例讲解
2018/12/10 Python
Python脚本操作Excel实现批量替换功能
2019/11/20 Python
Python持续监听文件变化代码实例
2020/07/22 Python
pyqt5 textEdit、lineEdit操作的示例代码
2020/08/12 Python
详解canvas绘图时遇到的跨域问题
2018/03/22 HTML / CSS
有关爱国演讲稿
2014/05/07 职场文书
县委常委班子专题民主生活会查摆问题及整改措施
2014/09/27 职场文书
思想政治表现评语
2015/01/04 职场文书
《神奇的鸟岛》教学反思
2016/02/22 职场文书
利用Matlab绘制各类特殊图形的实例代码
2021/07/16 Python
TV动画《政宗君的复仇》第二季制作决定PV公布
2022/04/02 日漫
解决vue-router的beforeRouteUpdate不能触发
2022/04/14 Vue.js
Mysql中mvcc各场景理解应用
2022/08/05 MySQL