使用 Junos PyEZ 操作表和视图解析非结构化输出
Junos PyEZ 操作 (op) 表,用于从在 Junos 设备上执行的 CLI 命令的文本输出或在特定灵活 PIC 集中器 (FPC) 执行的 vty 命令的文本输出中提取数据。将表定义加载或导入到 Python 模块中后,可以检索表项目并提取和操作数据。
要从特定设备检索信息,必须创建一个表实例,并将其与 Device 表示目标设备的对象相关联。例如:
from jnpr.junos import Device
from jnpr.junos.command.ospf_neighbor import OspfNeighborTable
with Device(host='router.example.com') as dev:
stats = OspfNeighborTable(dev)
要使用 Junos PyEZ 应用程序中的表格来执行命令并检索数据,请调用表格 get() 的方法并提供任何必需或可选参数。如果表定义了默认参数,例如为 args、 filters、 key_items、 或 target 参数,则 get() 方法会使用这些默认值,除非您在参数列表中覆盖这些默认值。
from jnpr.junos import Device
from jnpr.junos.command.ospf_neighbor import OspfNeighborTable
from pprint import pprint
import json
with Device(host='router.example.com') as dev:
stats = OspfNeighborTable(dev)
stats.get()
pprint(json.loads(stats.to_json()))