Python使用TextFSM 解析H3C交换机的LLDP信息

Python使用TextFSM 解析H3C交换机的LLDP信息,第1张

概述1.通过SSH来登录交换机,然后执行displaylldpneighbor-informationlist2.使用textfsm解析交换机返回的结果,结果是如下格式:[对端设备名,本地端口号,对端端口号] 3.代码a.textfsm解析规则模板文件(h3c_lldp_list.yaml):Valuedevice_id(\S+)Valuelocal_intf(\w+[\/|\d]{3

1.通过SSH来登录交换机,然后执行display lldp neighbor-information List
2.使用textfsm解析交换机返回的结果,结果是如下格式:

[对端设备名, 本地端口号, 对端端口号]

 

3.代码
a.textfsm解析规则模板文件(h3c_lldp_List.yaml):

Value device_ID (\S+)Value local_intf (\w+[\/|\d]{3})Value remote_inft (\w+[\/|\d]{3})Start  ^System name          Local Interface Chassis ID      Port ID  ^${device_ID}\s+${local_intf}\s+\S+\s+${remote_inft} -> RecordEOF

b.需要执行的python代码文件:

from netmiko import ConnectHandlerimport textfsm### 使用netmiko SSH登录交换机 ###h3c_device = {    'device_type': 'hp_comware',    'ip': '172.16.1.102',    'username': 'admin',    'password': 'admin',}connect = ConnectHandler(**h3c_device)lldp_output = connect.send_command('display lldp neighbor-information List')print('交换机执行命令返回的结果:')print(lldp_output)print('--------------------------------------------')### 使用TextFSM解析交换机的输出文本 #### textfsm读取 匹配规则模板h3c_lldp_List.yamlfsm = textfsm.TextFSM(open('h3c_lldp_List.yaml'))# 将交换机的LLDP输出信息 传给textfsm进行解析fsm_results = fsm.ParseText(lldp_output)print('textfsm解析结果:')print(fsm_results)

 

4.代码执行后输出的结果:

交换机执行命令返回的结果:Chassis ID : * -- -- Nearest nontpmr brIDge neighbor             # -- -- Nearest customer brIDge neighbor             Default -- -- Nearest brIDge neighborSystem name          Local Interface Chassis ID      Port IDsw1                  GE1/0           7425-8ae3-e836  GigabitEthernet1/0         sw3                  GE2/0           7425-8ae3-5b88  GigabitEthernet1/0         --------------------------------------------textfsm解析结果:[['sw1', 'GE1/0', 'GigabitEthernet1/0'], ['sw3', 'GE2/0', 'GigabitEthernet1/0']]Process finished with exit code 0

 

5.参考
Python netmiko 管理 network devices 简例
TextFSM官方文档

总结

以上是内存溢出为你收集整理的Python使用TextFSM 解析H3C交换机的LLDP信息全部内容,希望文章能够帮你解决Python使用TextFSM 解析H3C交换机的LLDP信息所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1186572.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-03
下一篇 2022-06-03

发表评论

登录后才能评论

评论列表(0条)

保存