从aruboos http api返回命令结果
arubaapi的Python项目详细描述
##arubaapi
登录到aruba控制器的web ui并发出任意的cli show命令。这是为了减轻屏幕抓取arubos输出(尤其是表)的痛苦而创建的。它不是非常一致的,而且可能无法保证在AOS版本之间的一致性。如果您发现接收到的数据有问题,请提交问题或请求请求。
http api有三种类型的数据输出:
*表数据
*命名数据-通常是键值对,但并不总是。在重复名称的情况下,该值是所看到的所有值的列表。< BR> >匿名数据-辅助数据输出。通常是非结构化的行,如标志图例。
config命令似乎可以通过同一个接口一次发送一个。执行config命令将不会接收回任何数据,但需要注意的是,无效命令也不会接收回任何数据。重新检查配置更改是否保留在随后的show命令中可能是个好主意。
\notes
*它确实不喜欢“show running config”。它只会挂起并且不返回数据。
*除非调用“close()”或使用“with”语句,否则不会删除会话。
*无效命令返回不带数据的http 200,因此,目前还没有办法检测到它们。
\example
``python
import arubapi
from pprint import pprint
data=connection.cli('show ap database local')
connection.close()
pprint(data,120)
```
输出:
```
{数据':['标志:u=未配置;n=重复名称;g=无此类组;l=未授权',
'i=不活动;d=脏或无配置;e=管理域不匹配',
'x=维护模式;p=pppoe ap;b=内置ap;s=LACP条带化',
'r=remote ap;r-=remote ap需要auth;c=cellular rap;',
'c=cert-based rap;1=802.1x authenticated ap;2=using ike version 2',
'u=custom cert rap;s=standby mode ap;j=usb cert at ap',
'i=indoor;o=outdoor',
'm=mesh node;y=mesh recovery'],
'nameddata':{'total aps':'2'},
'tables':{'ap database':[{'ap type':'135',
'flags':none,
'group':'ap group 1',
'ip address':'10.0.0.12',
'name':'ap 1',
“备用IP”:“0.0.0.0”,
“状态”:“关闭”,
“交换机IP”:“10.0.0.10”},
{“AP类型”:“277”,
“标志”:无,
“组”:“AP组1”,
“IP地址”:“10.0.0.99”,
“名称”:“AP 2”,
“备用IP”:“0.0.0.0”,
“状态”:“上行43d:0h:23m:54s”,
“交换机IP”:“10.0.0.10”}
```
登录到aruba控制器的web ui并发出任意的cli show命令。这是为了减轻屏幕抓取arubos输出(尤其是表)的痛苦而创建的。它不是非常一致的,而且可能无法保证在AOS版本之间的一致性。如果您发现接收到的数据有问题,请提交问题或请求请求。
http api有三种类型的数据输出:
*表数据
*命名数据-通常是键值对,但并不总是。在重复名称的情况下,该值是所看到的所有值的列表。< BR> >匿名数据-辅助数据输出。通常是非结构化的行,如标志图例。
config命令似乎可以通过同一个接口一次发送一个。执行config命令将不会接收回任何数据,但需要注意的是,无效命令也不会接收回任何数据。重新检查配置更改是否保留在随后的show命令中可能是个好主意。
\notes
*它确实不喜欢“show running config”。它只会挂起并且不返回数据。
*除非调用“close()”或使用“with”语句,否则不会删除会话。
*无效命令返回不带数据的http 200,因此,目前还没有办法检测到它们。
\example
``python
import arubapi
from pprint import pprint
connection.close()
pprint(data,120)
```
输出:
```
{数据':['标志:u=未配置;n=重复名称;g=无此类组;l=未授权',
'i=不活动;d=脏或无配置;e=管理域不匹配',
'x=维护模式;p=pppoe ap;b=内置ap;s=LACP条带化',
'r=remote ap;r-=remote ap需要auth;c=cellular rap;',
'c=cert-based rap;1=802.1x authenticated ap;2=using ike version 2',
'u=custom cert rap;s=standby mode ap;j=usb cert at ap',
'i=indoor;o=outdoor',
'm=mesh node;y=mesh recovery'],
'nameddata':{'total aps':'2'},
'tables':{'ap database':[{'ap type':'135',
'flags':none,
'group':'ap group 1',
'ip address':'10.0.0.12',
'name':'ap 1',
“备用IP”:“0.0.0.0”,
“状态”:“关闭”,
“交换机IP”:“10.0.0.10”},
{“AP类型”:“277”,
“标志”:无,
“组”:“AP组1”,
“IP地址”:“10.0.0.99”,
“名称”:“AP 2”,
“备用IP”:“0.0.0.0”,
“状态”:“上行43d:0h:23m:54s”,
“交换机IP”:“10.0.0.10”}
```