python获取zabbix主机列表

时间:2020-04-13
本文章向大家介绍python获取zabbix主机列表,主要包括python获取zabbix主机列表使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
import requests
import json

headers = {
    'Content-Type': 'application/json'
}

class GetZabbix:
    def __init__(self):
        #用户信息
        self.username = "******"
        self.password = "******"
        self.url = "http://192.168.1.*/zabbix/api_jsonrpc.php"
        self.token = self.getToken()

    def getToken(self):
        data = {
            "jsonrpc": "2.0",
            "method": "user.login",
            "params": {
                "user": self.username,
                "password": self.password
            },
            "id": 1,
            "auth": None
        }
        r = requests.post(url=self.url, headers=headers, data=json.dumps(data))
        token = json.loads(r.content).get("result")
        return token

    def getHosts(self):
        data = {
            "jsonrpc": "2.0",
            "method": "host.get",
            "params": {
                "output": [
                    "hostid",
                    "host"
                ],
                "selectInterfaces": [
                    "interfaceid",
                    "ip"
                ]
            },
            "id": 2,
            "auth": self.token
        }
        r = requests.post(url=self.url, headers=headers, data=json.dumps(data))
        # print(r.content)
        res = json.loads(r.text)
        return res

原文地址:https://www.cnblogs.com/ttyypjt/p/12692039.html