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中struct模块对字节流/二进制流的操作教程
Jan 21 Python
Python用threading实现多线程详解
Feb 03 Python
python dataframe astype 字段类型转换方法
Apr 11 Python
Python装饰器原理与用法分析
Apr 30 Python
详解Python中的type和object
Aug 15 Python
python版本五子棋的实现代码
Dec 11 Python
Pycharm创建项目时如何自动添加头部信息
Nov 14 Python
Python使用正则实现计算字符串算式
Dec 29 Python
python ssh 执行shell命令的示例
Sep 29 Python
基于python爬取梨视频实现过程解析
Nov 09 Python
python使用pygame创建精灵Sprite
Apr 06 Python
python使用opencv对图像添加噪声(高斯/椒盐/泊松/斑点)
Apr 06 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
Symfony2框架学习笔记之HTTP Cache用法详解
2016/03/18 PHP
搜索附近的人PHP实现代码
2018/02/11 PHP
PHP实现关键字搜索后描红功能示例
2019/07/03 PHP
PHP call_user_func和call_user_func_array函数的简单理解与应用分析
2019/11/25 PHP
用javascript自动显示最后更新时间
2007/03/15 Javascript
javascript 特性检测并非浏览器检测
2010/01/15 Javascript
javascript 放大镜 v1.0 基于Yui2 实现的放大镜效果
2010/03/08 Javascript
来自qq的javascript面试题
2010/07/24 Javascript
Javascript操作URL函数修改版
2013/11/07 Javascript
jQuery表格排序组件-tablesorter使用示例
2014/05/26 Javascript
Node.js本地文件操作之文件拷贝与目录遍历的方法
2016/02/16 Javascript
js实现密码强度检测【附示例】
2016/03/30 Javascript
用JavaScript和jQuery实现瀑布流
2017/03/19 Javascript
vue.js国际化 vue-i18n插件的使用详解
2017/07/07 Javascript
在vue中实现简单页面逆传值的方法
2017/11/27 Javascript
学习python (2)
2006/10/31 Python
Python 功能和特点(新手必学)
2015/12/30 Python
Python 使用requests模块发送GET和POST请求的实现代码
2016/09/21 Python
Django高级编程之自定义Field实现多语言
2019/07/02 Python
python多进程下实现日志记录按时间分割
2019/07/22 Python
Django之富文本(获取内容,设置内容方式)
2020/05/21 Python
使用keras根据层名称来初始化网络
2020/05/21 Python
matplotlib之属性组合包(cycler)的使用
2021/02/24 Python
css3实现波纹特效、H5实现动态波浪效果
2018/01/31 HTML / CSS
HTML5安全介绍之内容安全策略(CSP)简介
2012/07/10 HTML / CSS
美国新兴城市生活方式零售商:VILLA
2017/12/06 全球购物
工商管理专业实习大学生自我鉴定
2013/09/19 职场文书
自荐信封面
2013/12/04 职场文书
办理暂住证介绍信
2014/01/11 职场文书
百年校庆节目主持词
2014/03/27 职场文书
主持人开幕词
2015/01/29 职场文书
怎样写辞职信
2015/02/27 职场文书
六年级数学教学反思
2016/02/16 职场文书
Java图书管理系统,课程设计必用(源码+文档)
2021/06/30 Java/Android
Python可视化动图组件ipyvizzu绘制惊艳的可视化动图
2022/04/21 Python
Java中的Kotlin 内部类原理
2022/06/16 Java/Android