欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python 批量操作設(shè)備的實(shí)現(xiàn)步驟

 更新時(shí)間:2021年07月07日 16:00:06   作者:盆友圈的小可愛  
本文將結(jié)合實(shí)例代碼,介紹Python 批量操作設(shè)備的實(shí)現(xiàn)步驟,文中通過示例代碼介紹的非常詳細(xì),需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

全民編程的時(shí)代,怎么能少了測(cè)試同學(xué)的身影。最近在學(xué)習(xí)Python,剛好活學(xué)活用,來實(shí)戰(zhàn)一波

背景需求

某天午休未睡醒的我,突然接到一個(gè)Leader在群里@小盆,把平臺(tái)上100臺(tái)設(shè)備硬盤都上傳一套多媒體文件,線上任務(wù)需要進(jìn)行測(cè)試。

- 方案一

如果本人勤快且工作任務(wù)不多的話,可能就哼哧哼哧,一臺(tái)一臺(tái)設(shè)備操作著

  • 遠(yuǎn)程登陸設(shè)備
  • 從本地把文件拷貝到設(shè)備中
  • 重復(fù)前面兩個(gè)步驟

不行阿,我這邊手上還有其他任務(wù)呢,交付日期也是今天,這樣做太浪費(fèi)時(shí)間了吧,方案一被否決
按照傳統(tǒng)的步驟,重復(fù)且低效,哪我去找開發(fā)去把相應(yīng)的接口要過來吧

- 方案二

  • 找到相關(guān)設(shè)備上傳文件的接口
  • 把文件上傳到服務(wù)器,生成下載鏈接
  • 使用Postman的工具去請(qǐng)求
  • 重復(fù)第三步,更改設(shè)備IP請(qǐng)求

試了一兩次,這也太繁瑣了吧,每請(qǐng)求一臺(tái)設(shè)備,就要更改下一臺(tái)的設(shè)備IP,整個(gè)過程也沒有節(jié)省多少時(shí)間阿。
內(nèi)心困惑之時(shí),我這不正在學(xué)習(xí)了Python,讓Python來幫我做事吧,節(jié)省下的時(shí)間好好放松一下(^-^)V,想到的方案三

方案三

  • 找到了相關(guān)設(shè)備功能接口
  • 找研發(fā)拿到100臺(tái)設(shè)備詳情(設(shè)備都是同樣型號(hào))
  • Python寫腳本
  • 運(yùn)行,休息

好吶,這還差不多,話不多說,行動(dòng)吧

準(zhǔn)備工作

我們需要準(zhǔn)備的環(huán)境

IDE:Pycharm
version: Python3.7

Python相關(guān)的庫

  • http庫(request)下載:pip install request
  • josn下載:用于解析URL相關(guān)的內(nèi)容

前提:

分析接口請(qǐng)求方式、請(qǐng)求參數(shù)、body和返回信息(示例)

上傳文件接口:  /api/Manager/dev/filetousb
請(qǐng)求方式: POST
請(qǐng)求參數(shù):Content-Type = application/json

  Body : {
              "action":"start",
              "file:[
              {
              "fileurl":"http://10.22.26.21/sw_bin/media/JueJing.jpg",
               "filename":"JueJing.jpg",
               "directory":"",
               "filemd5":"12345678910999"
              }
              ]
          }

關(guān)注到多媒體相關(guān)的文件都是以鏈接形式的,因此先提前把文件都上傳到服務(wù)器,生成了文件鏈接和文件的MD5值

使用Python request庫模擬網(wǎng)絡(luò)請(qǐng)求給設(shè)備端

Body內(nèi)容是JOSN的格式,因此需要使用Python內(nèi)置的josn庫

100臺(tái)設(shè)備都是不同IP,所以提前找到設(shè)備IP列表相信息,放到text文件里,則需要使用Python文件管理去一行一行去讀取放到列表里,這樣方便傳值進(jìn)行請(qǐng)求

動(dòng)手操作

經(jīng)過上面的準(zhǔn)備和分析,期間還去查了資料,(太菜了,盲人摸河一步一步的做)

三下五除二,一番實(shí)現(xiàn)調(diào)試,寫下初級(jí)小白的腳本(大佬們幫忙看看,指教指教)

import requests
import json

#使用的接口
usbfile = "/api/Manager/dev/filetousb"
#body內(nèi)容,需要上傳的文件
mediafile = {
                "action":"start",
                "file:[
                {
                "fileurl":"http://10.22.26.21/sw_bin/media/JueJing.jpg",
                 "filename":"JueJing.jpg",
                 "directory":"",
                 "filemd5":"12345678910999"
                }
                ]
            }   

#定義空的deviceiplist,用來添加測(cè)試設(shè)備的IP

deviceiplist = []

# 接口請(qǐng)求實(shí)現(xiàn)方法

def  do_post(ip,api,data):

    headers = {"Content-Type": "application/json"}

    url = "http://"+ip+ ":8080" + api

    print (url)

    try:
        r = requests.post(url,headers = headers,data = json.dumps(data),timeout= 10)
        print(r.status_code)
        print(r.content.decode("utf-8"))
        
    except requests.exceptions.ConnectionError:
    
        requests.status_code = "Connection refused"

#讀取設(shè)備IP文件,并添加到列表里

with open( "deviceip.txt","r") as f:
    while True:
        line = f.readline()
        if not line:
            break
        else:
            ip = [i for i in line]
            deviceiplist.append(ip)
          
f.close()

# 執(zhí)行循環(huán)請(qǐng)求100次
for i in range(100):

    print(iplist[i])
    
    time.sleep(10)
    # 上傳多媒體文件
    # do_post(deviceiplist[i],usbfile,mediafile)

運(yùn)行過程,我們就拿著省下來的時(shí)間來,搞其他事情,爭取早點(diǎn)下班(笑哭.jpg)
本次時(shí)間,比較緊急,腳本寫的也比較簡單,如果有更好的技能,歡迎大家多多留言,讓我這個(gè)小白增加眼界。

總結(jié)

到此這篇關(guān)于Python 批量操作設(shè)備的實(shí)現(xiàn)步驟的文章就介紹到這了,更多相關(guān)Python 批量操作設(shè)備內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • python加密打包程序詳解

    python加密打包程序詳解

    這篇文章主要介紹了python加密打包程序,還給大家介紹了Python實(shí)現(xiàn)文件簡單加解密的方法,本文通過示例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2023-04-04
  • python爬蟲模擬登錄之圖片驗(yàn)證碼實(shí)現(xiàn)詳解

    python爬蟲模擬登錄之圖片驗(yàn)證碼實(shí)現(xiàn)詳解

    眾所周知python是一個(gè)很強(qiáng)大的語言,它擁有眾多的庫,今天我嘗試了使用python進(jìn)行驗(yàn)證碼的識(shí)別,下面這篇文章主要給大家介紹了關(guān)于python爬蟲模擬登錄之圖片驗(yàn)證碼實(shí)現(xiàn)的相關(guān)資料,需要的朋友可以參考下
    2022-08-08
  • 快速解決pandas.read_csv()亂碼的問題

    快速解決pandas.read_csv()亂碼的問題

    今天小編就為大家分享一篇快速解決pandas.read_csv()亂碼的問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2018-06-06
  • python3.x中安裝web.py步驟方法

    python3.x中安裝web.py步驟方法

    在本篇文章里小編給大家分享的是關(guān)于python3.x中安裝web.py步驟方法,需要的朋友們可以學(xué)習(xí)下。
    2020-06-06
  • python中可以發(fā)生異常自動(dòng)重試庫retrying

    python中可以發(fā)生異常自動(dòng)重試庫retrying

    這篇文章主要介紹了python中可以發(fā)生異常自動(dòng)重試庫retrying,retrying是一個(gè)極簡的使用Python編寫的庫,主題更多相關(guān)內(nèi)容需要的朋友可以參考一下
    2022-06-06
  • python中remove函數(shù)的踩坑記錄

    python中remove函數(shù)的踩坑記錄

    這篇文章主要給大家介紹了關(guān)于python中remove函數(shù)的踩坑記錄,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-01-01
  • Python開發(fā)之Nginx+uWSGI+virtualenv多項(xiàng)目部署教程

    Python開發(fā)之Nginx+uWSGI+virtualenv多項(xiàng)目部署教程

    這篇文章主要介紹了Python系列之-Nginx+uWSGI+virtualenv多項(xiàng)目部署教程,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-05-05
  • 利用Python如何制作貪吃蛇及AI版貪吃蛇詳解

    利用Python如何制作貪吃蛇及AI版貪吃蛇詳解

    這篇文章主要給大家介紹了關(guān)于利用Python如何制作貪吃蛇及AI版貪吃蛇的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-08-08
  • Python正則表達(dá)式匹配ip地址實(shí)例

    Python正則表達(dá)式匹配ip地址實(shí)例

    這篇文章主要介紹了Python正則表達(dá)式匹配ip地址實(shí)例,通過簡單的實(shí)例講述了re模塊的用法,該實(shí)例非常具有實(shí)用價(jià)值,需要的朋友可以參考下
    2014-10-10
  • Python通過隊(duì)列實(shí)現(xiàn)進(jìn)程間通信詳情

    Python通過隊(duì)列實(shí)現(xiàn)進(jìn)程間通信詳情

    這篇文章主要介紹了Python通過隊(duì)列實(shí)現(xiàn)進(jìn)程間通信詳情文章通過提出問題:在多進(jìn)程中,每個(gè)進(jìn)程之間是什么關(guān)系展開主題相關(guān)內(nèi)容,感興趣的朋友可以參考一下
    2022-06-06

最新評(píng)論