Meraki仪表板API

meraki-dashboard-api的Python项目详细描述


Meraki仪表板API

访问您的Cisco Meraki云是以一种Python式的方式管理的。也可通过PIP获得

先决条件

您需要在Meraki仪表板中启用API并获得一个APIkey:Instructions

示例

frommeraki_dashboard_apiimportDashboardapikey="jkhsfsdhk32424******example*****jlasdfsdfl3245345"dash=Dashboard(apikey)# list all organizationsmyOrgs=dash.organizations.list()print(myOrgs)# list all organization's networksmyNets=dash.organizations.networks(<orgId>)print(myNets)

因为其他可用的选项都是复杂的或老派的,所以我需要一种更加python和面向对象的方式。

90%的que api属于/networks端点,从那里可以看到一些组,在meraki文档中,这些组被表示为独立的,但大多数都属于同一个父端点。

oficial实现是一个简单的函数式编程(老派),我认为,guzmonne实现是返回另一个实例中的实例的一种非常复杂的方法。

示例:

response=meraki.organizations().index()json=response.json()

相反,我使用一些神奇的方法来按照严格的url模式实例化类。

示例:

client=dash.networks.clients.get(<networkId>,<clientId>)print(client)

我使用args构建url路径,使用kwargs传递每个端点的查询参数。

示例:

dev=dash.networks.devices.loss_and_latency(<networkId>,<serial>,uplink=wan1,ip=1.2.3.4,timespan=7200)print(dev)

对于post和put方法,可以使用kwargs数据或更新。

例如

payload={'name':'My AP','tags':'recently-added ','lat':37.4180951010362,'lng':-122.098531723022,'address':'some place','notes':'no notes','moveMapMarker':True}dev=dash.networks.devices.update(<networkId>,<serial>,update=payload)print(dev)

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
为什么Java中有三种“阻塞”线程状态,而C中只有一种?   JAVA从文本文件中找到几个单词或短语并显示出来   java更改日志。Jenkins中的xml文件,无需重新生成代码   java使用扫描器读取“干净”文本文件时,是否有任何解析?   stream从InputStream中获取字节数组,但在Java中没有已知大小?   java一旦布尔值为真,如何关闭JFrame?   java对HashMap中容量计算算法的理解   java 安卓句柄选择器状态   Java Swing编程面板标题   java我希望在启动或启动安卓 mobile时显示消息或通知。   java在一个应用程序中支持多个JFrame   java如何使用SeleniumWebDriver选择网页上的两个元素之一?   java Tomcat部署问题   java意图传递数据未成功   安卓在java中将映射定义为常量   java最佳实践Swing、数据库访问   java com。反恐委员会。wstx。exc.WstxIOException:尝试在封闭流上读取   if语句如何检查java中是否存在表达式中的下一个或最后一个值