python从入门到放弃之二_(二)Python调用Zabbix api之从入门到放弃——登录并获取身份验证令牌...

本文详细介绍了如何使用Python通过Zabbix API进行登录,获取身份验证令牌,并利用该令牌进行数据访问和操作。步骤包括使用RESTClient进行登录验证,以及在Python中实现登录过程的代码示例。
摘要由CSDN通过智能技术生成

(二)Python调用Zabbix api之从入门到放弃——登录并获取身份验证令牌

发布时间:2020-06-20 14:00:56

来源:51CTO

阅读:2342

访问zabbix api的URL是:

http://x.x.x.x/zabbix/api_jsonrpc.php

x.x.x.x可能是你的IP或者域名

访问流程概览:

1、首先登录

2、认证成功后zabbix server返回一个token

3、带着这个token去访问各种数据,做各种操作

4、完毕!

一、用RESTClient进行登录

122310.jpg

在json请求的正文中,具有以下属性:jsonrpc - API使用的JSON-RPC协议的版本; Zabbix API实现JSON-RPC版本2.0;

method - 调用的API方法;

params - 将被传递给API方法的参数;

id - 请求的任意标识符;

auth -用户认证令牌; 因为我们还没有一个,它的设置null。

正确提供凭据后,API返回的响应将包含用户身份验证令牌(json格式):

{

"jsonrpc":"2.0",

"result":"140f4524c02e2731dd74c48d29aa5ce8", #这个就是token

"id":1

}

二、使用Python进行登录# -*- coding:utf-8 -*-

import urllib2

import json

url = 'http://x.x.x.x/zabbix/api_jsonrpc.php'

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

req = json.dumps(

{

"jsonrpc": "2.0",

"method": "user.login",

"params": {

"user": "Admin",

"password": "你的密码"

},

"id": 0,

}

)

def auth():

r = urllib2.Request(url=url, headers=header, data=req)

response = urllib2.urlopen(r)

token = json.loads(response.read())

print(token)

if __name__ == '__main__':

auth()

得到的响应:

122312.jpg

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值