Python 调用海康威视 iSecure Center 综合安防管理平台接口

关键词:海康威视、Hikvision、综合安防管理平台、iSecure Center、iSC、OpenAPI、Artemis、Python

简介

Python 使用 Hikvision-OpenAPI-Signer 模块调用海康威视综合安防管理平台接口。

安装

pip install hikvision-openapi-signer

示例

  • 使用requests作为HTTP客户端
import requests
from hikvision_openapi_signer import HikvisionOpenAPISigner

signer = HikvisionOpenAPISigner("https://isc.example.com", 12345678, 'abcdefghijklmnopqrst',
                                headers={'tagId': 0})

def get_organization_list(organization_name: str = None):
    request = signer.sign('POST', '/api/resource/v1/org/advance/orgList',
                          jsons={'orgName': organization_name, 'pageNo': 1, 'pageSize': 1000},
                          accept='application/json')
    method, url, headers, body = request
    response = requests.request(method, url, headers=headers, data=body)
    return response.json()['data']['list']

print((get_organization_list()))
  • 使用HTTPX作为异步HTTP客户端
import asyncio
import httpx
from hikvision_openapi_signer import HikvisionOpenAPISigner

client = httpx.AsyncClient()
signer = HikvisionOpenAPISigner("https://isc.example.com", 12345678, 'abcdefghijklmnopqrst',
                                headers={'tagId': 0})

async def get_organization_list(organization_name: str = None):
    request = signer.sign('POST', '/api/resource/v1/org/advance/orgList',
                          jsons={'orgName': organization_name, 'pageNo': 1, 'pageSize': 1000},
                          accept='application/json')
    method, url, headers, body = request
    response = await client.request(method, url, headers=headers, content=body)
    return response.json()['data']['list']

print(asyncio.run(get_organization_list()))

参考文档

综合安防管理平台(iSecure Center)文档

posted @ 2025-05-01 20:10  Accurio  阅读(342)  评论(0)    收藏  举报