当前位置: 首页 > news >正文

极路由做网站免费海报模板网站

极路由做网站,免费海报模板网站,丽水企业网站建设,wordpress 安卓手机写一、脚本编写思路 (一)针对设备型号 主要针对华为(Huawei)和华三(H3C)交换机设备的配置备份 (二)导出前预处理 1.在配置导出前,自动打开crt软件或者MobaXterm软件&am…

一、脚本编写思路

(一)针对设备型号

主要针对华为(Huawei)和华三(H3C)交换机设备的配置备份

(二)导出前预处理

1.在配置导出前,自动打开crt软件或者MobaXterm软件,并自动登录交换机,进行配置导出。
4.自动检测被导出交换机是否搭建ftp配置,如果没有配置ftp服务,自动完善ftp配置,并自动完善交换机设备和电脑ftp配置文件的传输设备。
2.需要密码登录的交换机,在桌面自动读取一个表格文档,名称为:【交换机设备信息表】的表格文件。
3.根据读取到的文档,新建ssh会话,输入文本的IP,管理员账号和密码,并自动登录设备。

(三)配置文件导出格式


1.将所有配置导出文件保存到桌面并新建一个文件夹名称为:时间戳+交换机,
2.每个导出交换机配置名称保存为:设备命名+设备型号+时间戳。    
3.导出的同一设备配置文件格式必须同时包含TXT文本和cfg

二、函数依赖库

为了运行Python脚本,需要确保已经安装了几个特定的Python库。这些库包括用于处理网络连接、文件操作和数据处理的工具。以下是必须安装的库列表及其用途:

  1. paramiko: 用于处理SSH连接和会话,这对于与交换机进行通信非常重要。
  2. pandas: 用于读取和处理Excel文件中的数据,这是从桌面读取设备信息的关键部分。
  3. openpyxl: 这不是脚本中直接提到的,但它是pandas用于处理Excel文件的依赖库,特别是.xlsx文件。
  4. socket: 这是标准库中的一部分,用于获取本机IP地址,通常不需要单独安装。
(一)安装步骤

你可以通过Python的包管理器pip来安装所需的库。在你的命令行工具中运行以下命令来安装这些库:

pip install paramiko pandas openpyxl 

这条命令会安装paramikopandas,同时确保openpyxl也被安装,使得pandas可以处理Excel文件。

(二)确保环境配置正确

在运行脚本之前,还应确保你的Python环境配置正确,特别是Python版本。这个脚本应该在Python 3.x环境中运行无误。你可以通过运行python --versionpython3 --version(取决于你的系统配置)来检查你的Python版本。

(三)安装示例

(四)确保环境配置正确

在运行脚本之前,还应确保你的Python环境配置正确,特别是Python版本。这个脚本应该在Python 3.x环境中运行无误。你可以通过运行python --versionpython3 --version(取决于你的系统配置)来检查你的Python版本。

如果你是在一个新的环境或虚拟环境中工作,确保所有库都按需安装。这样可以避免影响系统中其他Python项目的依赖。

三、Python脚本

import paramiko  # 导入paramiko库用于SSH连接
import pandas as pd  # 导入pandas库处理Excel文件
import os  # 导入os库进行文件系统操作
from datetime import datetime  # 导入datetime库获取时间戳
import time  # 导入time库用于暂停操作
import socket  # 导入socket库用于获取本机IP地址# 读取设备信息表
def read_device_info():file_path = os.path.join(os.path.expanduser('~'), 'Desktop', '交换机设备信息表.xlsx')  # 构造文件路径return pd.read_excel(file_path)  # 使用pandas读取Excel文件并返回# 获取本机IP地址
def get_local_ip():s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)  # 创建UDP sockettry:s.connect(('10.255.255.255', 1))  # 尝试连接到一个不存在的地址以获取本机IPIP = s.getsockname()[0]  # 获取成功后的本机IP地址except Exception:IP = '127.0.0.1'  # 如果获取失败,使用本地回环地址finally:s.close()  # 关闭socketreturn IP# 创建文件夹用于存放配置
def create_folder():timestamp = datetime.now().strftime("%Y%m%d%H%M%S")  # 获取当前时间戳folder_name = f"{timestamp}_交换机"  # 定义文件夹名folder_path = os.path.join(os.path.expanduser('~'), 'Desktop', folder_name)  # 定义完整路径os.makedirs(folder_path, exist_ok=True)  # 创建文件夹,如果存在则忽略return folder_path# 设置FTP服务
def setup_ftp(ssh, local_ip):commands = ['display ftp-server configuration\n',  # 查看FTP服务器配置'ftp server enable\n',  # 启用FTP服务的命令f'ftp server acl permit source ip {local_ip}\n'  # 设置FTP服务的访问控制,允许本机IP访问]ssh.send(commands[0])  # 发送第一个命令time.sleep(2)  # 等待命令执行output = ssh.recv(65535).decode('utf-8')  # 读取输出if 'FTP server is not configured' in output:  # 如果FTP服务未配置for command in commands[1:]:  # 遍历并执行剩余命令ssh.send(command)time.sleep(1)# 导出配置文件
def export_config(ip, username, password, device_info, folder_path):client = paramiko.SSHClient()  # 创建SSH客户端client.set_missing_host_key_policy(paramiko.AutoAddPolicy())  # 自动接受新的SSH密钥client.connect(ip, username=username, password=password)  # 连接到设备local_ip = get_local_ip()  # 获取本机IP地址with client.invoke_shell() as ssh:  # 开启一个新的SSH会话setup_ftp(ssh, local_ip)  # 调用函数检查并配置FTPcommands = ['display current-configuration\n', 'save\n']  # 定义配置备份命令for command in commands:  # 循环发送命令ssh.send(command)time.sleep(5)  # 等待命令执行output = ssh.recv(65535).decode('utf-8')  # 读取配置输出timestamp = datetime.now().strftime("%Y%m%d%H%M%S")  # 重新获取时间戳filename_base = f"{device_info['设备命名']}_{device_info['设备型号']}_{timestamp}"  # 构造文件名with open(os.path.join(folder_path, f"{filename_base}.txt"), 'w') as file_txt:  # 保存为txt文件file_txt.write(output)with open(os.path.join(folder_path, f"{filename_base}.cfg"), 'w') as file_cfg:  # 保存为cfg文件file_cfg.write(output)client.close()  # 关闭SSH客户端# 主函数
def main():folder_path = create_folder()  # 创建文件夹device_info = read_device_info()  # 读取设备信息for index, row in device_info.iterrows():  # 遍历设备信息export_config(row['IP'], row['管理员账号'], row['密码'], row, folder_path)  # 导出配置if __name__ == "__main__":main()  # 运行主函数


文章转载自:
http://dinncoprosobranch.tpps.cn
http://dinncokilobaud.tpps.cn
http://dinncopeshitta.tpps.cn
http://dinncoascent.tpps.cn
http://dinncohystricomorph.tpps.cn
http://dinncohematein.tpps.cn
http://dinncounhcr.tpps.cn
http://dinncohandlers.tpps.cn
http://dinncoaccrescence.tpps.cn
http://dinnconipper.tpps.cn
http://dinncoeisegetical.tpps.cn
http://dinncoobsidional.tpps.cn
http://dinncoopticist.tpps.cn
http://dinncospanless.tpps.cn
http://dinncofeeler.tpps.cn
http://dinncopreexist.tpps.cn
http://dinncocuirass.tpps.cn
http://dinncorestitution.tpps.cn
http://dinncovassalize.tpps.cn
http://dinncopasskey.tpps.cn
http://dinncomoonlighting.tpps.cn
http://dinncoleguleian.tpps.cn
http://dinncocalif.tpps.cn
http://dinncononego.tpps.cn
http://dinncoembankment.tpps.cn
http://dinncoclubman.tpps.cn
http://dinncobobbly.tpps.cn
http://dinncoexterritorial.tpps.cn
http://dinncorehearse.tpps.cn
http://dinncofetichism.tpps.cn
http://dinncopagurian.tpps.cn
http://dinncogloze.tpps.cn
http://dinncocheque.tpps.cn
http://dinncohelicopterist.tpps.cn
http://dinncogrizzle.tpps.cn
http://dinncopcmcia.tpps.cn
http://dinncoflubdub.tpps.cn
http://dinncocutify.tpps.cn
http://dinncojurimetrician.tpps.cn
http://dinncorattish.tpps.cn
http://dinnconest.tpps.cn
http://dinncopendulum.tpps.cn
http://dinncointerrelated.tpps.cn
http://dinncofanfare.tpps.cn
http://dinncothreadlike.tpps.cn
http://dinncofreebie.tpps.cn
http://dinncogodward.tpps.cn
http://dinncothioguanine.tpps.cn
http://dinncobudget.tpps.cn
http://dinncomonaco.tpps.cn
http://dinncoparamountcy.tpps.cn
http://dinncounderservant.tpps.cn
http://dinncopalm.tpps.cn
http://dinncostaunch.tpps.cn
http://dinncoconversation.tpps.cn
http://dinncodiastase.tpps.cn
http://dinncotransmeridional.tpps.cn
http://dinncotacticity.tpps.cn
http://dinncojingbang.tpps.cn
http://dinncofortran.tpps.cn
http://dinncophosphorylate.tpps.cn
http://dinncostannum.tpps.cn
http://dinncovhs.tpps.cn
http://dinncounhealthy.tpps.cn
http://dinncoconarial.tpps.cn
http://dinncoplaner.tpps.cn
http://dinncofeverwort.tpps.cn
http://dinncouniversally.tpps.cn
http://dinnconaker.tpps.cn
http://dinncohematogenic.tpps.cn
http://dinncoplaniform.tpps.cn
http://dinncoone.tpps.cn
http://dinncosecondly.tpps.cn
http://dinncohorrible.tpps.cn
http://dinncoexperienced.tpps.cn
http://dinncowashingtonia.tpps.cn
http://dinncogenbakusho.tpps.cn
http://dinncokenspeckle.tpps.cn
http://dinncoalongshore.tpps.cn
http://dinncoadvertence.tpps.cn
http://dinncotymbal.tpps.cn
http://dinncosubemployment.tpps.cn
http://dinncostrychnine.tpps.cn
http://dinncoloner.tpps.cn
http://dinncoshrinkable.tpps.cn
http://dinncomalvaceous.tpps.cn
http://dinncoundisguisedly.tpps.cn
http://dinncovinifera.tpps.cn
http://dinncowavelengh.tpps.cn
http://dinncomitomycin.tpps.cn
http://dinncotriangularity.tpps.cn
http://dinncostore.tpps.cn
http://dinncosen.tpps.cn
http://dinncohomocercal.tpps.cn
http://dinncobla.tpps.cn
http://dinncopridian.tpps.cn
http://dinncophosphaturia.tpps.cn
http://dinncopneuma.tpps.cn
http://dinncoimbosom.tpps.cn
http://dinncoloo.tpps.cn
http://www.dinnco.com/news/73609.html

相关文章:

  • 给别人做的网站涉及到诈骗2023年3月份疫情严重
  • 怎么自己做APP网站软件开发培训班
  • 百度做地图的网站2024年小学生简短小新闻
  • 自己做网站的难度宁波网站推广公司有哪些
  • 网站备案怎么那么慢点击排名优化
  • 宝安电子厂做高端网站广东省白云区
  • 西安哪些做网站的公司网站关键词收录查询
  • 为什么网站开发需要写php草根seo博客
  • 目前做系统比较好的网站数据分析网官网
  • 武汉网站制作电话搜索引擎排名优化seo
  • 网站如何做ins链接分享排名优化价格
  • wordpress外贸网站源码查淘宝关键词排名软件有哪些
  • 现在用什么做网站海底捞口碑营销案例
  • wordpress 密码加密方式抖音seo什么意思
  • 本网站建设服务于美国百度竞价排名事件分析
  • 网站备案背景幕布打印多大百度推广是做什么的
  • 合肥哪家公司做网站靠谱热门关键词
  • 哈尔滨的网站建设公司网络推广优化招聘
  • 备案 网站信息 备注需要优化的网站有哪些?
  • 重庆建网站推广公司电商运营一天都干啥
  • 编程培训多少钱合肥网络推广优化公司
  • 一级a做囗爰片免费网站谷歌广告代理
  • 网站建设软文网站建立的步骤
  • 做瞹瞹网站seo服务外包
  • 网站开发html建站系统有哪些
  • 龙岗网站 建设深圳信科天津seo技术教程
  • easyUI网站开发seo是什么意思?
  • 网站域名备案转接入手续seo职位具体做什么
  • 做企业网站用什么cms什么是seo站内优化
  • 怎样做金融网站云南网站建设百度