RM新时代网站-首页

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

用Python寫SecureCRT批量登錄/巡檢網絡設備腳本

網絡技術干貨圈 ? 來源:網絡技術干貨圈 ? 2022-12-28 09:32 ? 次閱讀

前言

因為有約200臺的網絡設備需要每天登錄巡檢、查看配置、保存配置、定期更改密碼(每周改一次),如果都手動去登錄、配置將是非常耗費時間和人力的,所以就有了整理出腳本的想法。查看了網上大多是VBS編寫的腳本,我對VBS不熟悉,剛好前段時間初步學習了Python,就想用Python整理一些自己需要的腳本。

提示:以下是本篇文章正文內容,下面案例可供參考

一、腳本主要功能

自動的逐臺登錄設備,并執(zhí)行相關命令;

記錄屏幕輸出并保存到TXT文件中,將TXT文件以設備名、設備IP、時間命名。

二、腳本示例

#$language="python"
#$interface="1.0"
importtime
importos
importcsv

user='admin'
passwd='huawei@123'
#定義一個變量,名為current_time,把當前PC的時間格式化后賦值給該變量
current_time=time.strftime('%Y-%m-%d-%H-%M-%S',time.localtime(time.time()))


defmain():
#設置CRT的屏幕同步屬性為False。具體作用自行百度。
crt.Screen.Synchronous=False
#通過withopen打開ip.txt文件,獲取文件中的所有IP地址。txt文件中一個IP占用一行。
withopen('ip.txt','r')asrfile:
host_list=rfile.readlines()
forhostinhost_list:
#由于readlines()方法在獲取txt中的IP時,會把換行符讀取出來,賦值給host_list變量時IP地址后邊跟了“
”導致CRT無法讀取爭取的IP,所以使用split()方法分割字符串,獲取正確的IP地址信息。
cmd='/SSH2/L%s/PASSWORD%s/C3DES/MMD5%s'%(user,passwd1,host.split()[0])
crt.Session.ConnectInTab(cmd)
time.sleep(1)
crt.Screen.Send('
')
crt.Screen.Send('
')
crt.Screen.WaitForString('>')
#把log_name()函數的值賦給current_name這個變量。
current_name=log_name()
time.sleep(1)
#給txt文件命名。
crt.Session.LogFileName=current_name+"_"+host.split()[0]+"_"+current_time+"_log.txt"
crt.Session.Log(True)
time.sleep(1)
crt.Screen.Send('
')
crt.Screen.WaitForString('>')
crt.Screen.Send('displaycur
')
#因為會有很多遇到more的情況,而我們又無法確定要輸入幾次空格,所以通過while循環(huán)中的條件判斷,實現(xiàn)不同情況的處理。
whileTrue:
crt.Screen.WaitForStrings(["----More----",'')
time.sleep(1)
crt.Screen.Send('
')
break
crt.Screen.Send('
')
crt.Screen.Send('
')
crt.Screen.WaitForString('>')
crt.Screen.Send('displayipinterbrie
')
crt.Screen.Send('
')
crt.Screen.Send('
')
crt.Screen.WaitForString('>')
crt.Screen.Send('quit
')
time.sleep(3)


deflog_name():
#定義一個還書獲取屏幕當前設備名稱
rowIndex=crt.Screen.CurrentRow
colindex=crt.Screen.CurrentColumn-1
chushi_name=crt.Screen.Get(rowIndex,1,rowIndex,colindex)
name=chushi_name.strip('<>')
returnname


main()

審核編輯:湯梓紅

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • python
    +關注

    關注

    56

    文章

    4792

    瀏覽量

    84627
  • 腳本
    +關注

    關注

    1

    文章

    389

    瀏覽量

    14858
  • SecureCRT
    +關注

    關注

    0

    文章

    26

    瀏覽量

    7919

原文標題:用Python寫SecureCRT批量登錄/巡檢網絡設備腳本

文章出處:【微信號:網絡技術干貨圈,微信公眾號:網絡技術干貨圈】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    SecureCRT連接串口卻沒有登錄Ubuntu界面

    SecureCRT連接串口成功后界面只顯示光標沒有Ubuntu的登陸界面顯示。我的是WSL2和Ubuntu 18.04,想連接調試串口,上位機使用CRT登錄(115200-8-N-
    發(fā)表于 11-06 21:16

    各類網絡設備

    ` 網絡設備,銳捷,艾泰,D-link,華為,H3C,思科,韓電,安普`
    發(fā)表于 11-29 11:15

    Linux常用網絡設備

    網絡設備是計算機體系結構中必不可少的一部分,處理器如果想與外界通信,通常都會選擇網絡設備作為通信接口。眾所周知,在 OSI(Open Systems Interconnection,開放網際互連)中,網絡被劃分為七個層次,從下到
    發(fā)表于 07-25 07:37

    詳細Python網絡爬蟲

    詳細Python網絡爬蟲
    發(fā)表于 09-07 08:40 ?32次下載
    詳細<b class='flag-5'>用</b><b class='flag-5'>Python</b><b class='flag-5'>寫</b><b class='flag-5'>網絡</b>爬蟲

    securecrt怎么使用!securecrt使用教程

     SecureCRT網絡工作者必備的一款軟件,它的用途非常大,它可以在Windows系統(tǒng)下登錄Linux服務器主機,因此有很多人會下載安裝它,但是卻不知道怎么,那么
    發(fā)表于 11-12 10:29 ?4.3w次閱讀
    <b class='flag-5'>securecrt</b>怎么使用!<b class='flag-5'>securecrt</b>使用教程

    Python網絡爬蟲

    Python網絡爬蟲的方法說明。
    發(fā)表于 06-01 11:55 ?21次下載

    利用python腳本批量登錄網絡設備修改配置

    按照下圖,在ensp模擬器上搭建環(huán)境,為了演示批量修改設備,龍哥這里實驗4臺路由器,當然了,如果你電腦性能足夠牛逼,你也可以多用幾臺路由器咯!然后標注好IP地址。
    的頭像 發(fā)表于 10-19 09:12 ?1570次閱讀

    Python網絡設備巡檢(異常自動報警)

    python抓取交換機的信息。
    的頭像 發(fā)表于 12-29 09:09 ?3190次閱讀

    python練手小程序

    如果管理網絡設備很多,不可能靠人力每天去登錄設備去查看是否在線。所以,可以利用python腳本通過每天掃描
    的頭像 發(fā)表于 01-09 09:49 ?581次閱讀

    如何通過Python腳本批量采集華為交換機配置

    通過學習python網絡運維自動化減少重復無意義的工作量,本次實驗雖然只是一條命令,通過display current-configuration采集設備配置,但是在有大量設備需要采集
    的頭像 發(fā)表于 01-09 10:32 ?4987次閱讀

    如何使用Python通過SNMP監(jiān)控網絡設備?

    前段時間,為了實現(xiàn)自動化巡檢,我開發(fā)了自動化巡檢工具,由于我的系統(tǒng)設備版本比較多,所以我是分別開發(fā)的客戶端程序,服務端使用dll文件與客戶端通信,服務端的dll在與python通信,通
    的頭像 發(fā)表于 01-09 10:38 ?1283次閱讀

    Flet+Python寫個美觀的登錄程序

    本教程Flet+Python創(chuàng)建了現(xiàn)代登錄表單??梢宰尨蠹乙桓QPython在Flet的加持下能有怎樣的發(fā)揮。其中的字段陰影、動畫和狀態(tài)控制……都使UI和UX更具吸引力。
    的頭像 發(fā)表于 05-31 15:43 ?6589次閱讀
    <b class='flag-5'>用</b>Flet+<b class='flag-5'>Python</b>寫個美觀的<b class='flag-5'>登錄</b>程序

    python驗證環(huán)境cocotb

    本文介紹了cocotb的安裝、python tb文件的寫法、xrun仿真cocotb的腳本等,我們來看看體驗如何。
    的頭像 發(fā)表于 07-24 09:38 ?532次閱讀
    <b class='flag-5'>用</b><b class='flag-5'>python</b><b class='flag-5'>寫</b>驗證環(huán)境cocotb

    使用Python批量連接華為網絡設備

    隨著網絡規(guī)模的擴大和設備數量的增加,手動配置和管理每臺網絡設備變得越來越不現(xiàn)實。因此,自動化工具和腳本變得尤為重要。Python語言以其簡潔
    的頭像 發(fā)表于 08-12 17:48 ?448次閱讀

    利用Python腳本登錄到交換機并創(chuàng)建VLAN

    本文將詳細介紹如何利用Python腳本登錄到交換機并創(chuàng)建VLAN。
    的頭像 發(fā)表于 08-12 17:59 ?575次閱讀
    RM新时代网站-首页