亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

python 修改本地網(wǎng)絡(luò)配置的方法

 更新時(shí)間:2019年08月14日 20:44:07   作者:zhongranxu  
今天小編就為大家分享一篇python 修改本地網(wǎng)絡(luò)配置的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧

本文主要說(shuō)一下怎么使用Python來(lái)修改本地的ip和dns等,因?yàn)橛斜镜氐膇p和dns都是隨機(jī)獲取的,有些時(shí)候不是很方便,需要修改,我就稍微的封裝了一下,但是隨機(jī)ip和網(wǎng)關(guān)、子網(wǎng)掩碼等我都沒有設(shè)置為參數(shù),因?yàn)榻?jīng)常用也懶得改了,可以自己去修改一下。

測(cè)試的時(shí)候,在win8.1上面需要用管理員身份才能執(zhí)行,win7似乎是不需要管理員身份的。

使用的Python庫(kù)是WMI,這個(gè)是默認(rèn)安裝了的。如果沒有去網(wǎng)上下載即可。

該說(shuō)的都在注釋里,就直接上代碼了。

# -*- coding: utf-8 -*-
import os
import random
import re
from time import sleep
from wmi import WMI

#隨機(jī)修改指定ip段的本機(jī)ip
class updateIP:
  def __init__(self):
    self.wmiService = WMI()
    #獲取到本地有網(wǎng)卡信息
    self.colNicConfigs = self.wmiService.Win32_NetworkAdapterConfiguration(IPEnabled = True)
    #print self.colNicConfigs[0]
  def getAdapter(self):
    flag = 0
    #遍歷所有網(wǎng)卡,找到要修改的那個(gè),這里我是用原ip的第一段正則出來(lái)的
    for obj in self.colNicConfigs:
      ip = re.findall("10.\d+.\d+.\d+", obj.IPAddress[0])
      if len(ip) > 0:
        return flag
      else:
        flag = flag+1
  def runSet(self):
    adapter = self.colNicConfigs[self.getAdapter()]
    '''
    #檢測(cè)ip是否在線,不可用,需登錄
    while True:
      ip2 = random.choice(['216', '217'])
      ip3 = random.randint(1, 254)
      ip4 = random.randint(1, 254)
      newIP = '10.%s.%s.%s' % (ip2, ip3, ip4)
      if self.pingIP(newIP):
        break
    '''
    #隨機(jī)選擇了ip的第二段
    ip2 = random.choice(['216', '217'])
    ip3 = random.randint(1, 254)  #隨機(jī)生成第三段和第二段的值
    ip4 = random.randint(1, 254)
    newIP = '10.%s.%s.%s' % (ip2, ip3, ip4)
    arrIPAddresses = [newIP]  #設(shè)置新的ip
    arrSubnetMasks = ['255.248.0.0']  #子網(wǎng)掩碼
    arrDefaultGateways = ['10.223.255.254'] #網(wǎng)關(guān)
    arrGatewayCostMetrics = [1]   #這里要設(shè)置成1,代表非自動(dòng)選擇
    arrDNSServers = ['211.137.191.26']   #dns服務(wù)器
    #開始執(zhí)行修改ip、子網(wǎng)掩碼、網(wǎng)關(guān)
    ipRes = adapter.EnableStatic(IPAddress = arrIPAddresses, SubnetMask = arrSubnetMasks)
    if ipRes[0] == 0:
      print u'\ttip:設(shè)置IP成功'
      print u'\t當(dāng)前ip:%s' % newIP
    else:
      if ipRes[0] == 1:
        print u'\ttip:設(shè)置IP成功,需要重啟計(jì)算機(jī)!'
      else:
        print u'\ttip:修改IP失敗: IP設(shè)置發(fā)生錯(cuò)誤'
        return False
    #開始執(zhí)行修改dns
    wayRes=adapter.SetGateways(DefaultIPGateway = arrDefaultGateways, GatewayCostMetric=arrGatewayCostMetrics)
    if wayRes[0] == 0:
      print u'\ttip:設(shè)置網(wǎng)關(guān)成功'
    else:
      print u'\ttip:修改網(wǎng)關(guān)失敗: 網(wǎng)關(guān)設(shè)置發(fā)生錯(cuò)誤'
      return False
    dnsRes = adapter.SetDNSServerSearchOrder(DNSServerSearchOrder=arrDNSServers)
    if dnsRes[0] == 0:
      print u'\ttip:設(shè)置DNS成功,等待3秒刷新緩存'
      sleep(3)
      #刷新DNS緩存使DNS生效
      os.system('ipconfig /flushdns')
    else:
      print u'\ttip:修改DNS失敗: DNS設(shè)置發(fā)生錯(cuò)誤'
      return False
'''
  //ping某ip看是否可以通
  def pingIP(self, ip):
    res = os.popen('ping -n 2 -w 1 %s' % ip).read() #內(nèi)容返回到res
    res = res.decode('gbk')
    if u'請(qǐng)求超時(shí)' in res:     #注意亂碼編碼問(wèn)題
       return False
    else:
      return True
'''
if __name__ == '__main__':
  update = updateIP()
  update.runSet()
  input()

以上這篇python 修改本地網(wǎng)絡(luò)配置的方法就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Python 中 -m 的典型用法、原理解析與發(fā)展演變

    Python 中 -m 的典型用法、原理解析與發(fā)展演變

    這篇文章主要介紹了Python 中 -m 的典型用法、原理解析與發(fā)展演變,需要的朋友可以參考下
    2019-11-11
  • 14個(gè)用Python實(shí)現(xiàn)的Excel常用操作總結(jié)

    14個(gè)用Python實(shí)現(xiàn)的Excel常用操作總結(jié)

    自從學(xué)了Python后就逼迫自己不用Excel,所有操作用Python實(shí)現(xiàn)。目的是鞏固Python,與增強(qiáng)數(shù)據(jù)處理能力。本文為大家總結(jié)了14個(gè)用Python實(shí)現(xiàn)的Excel常用操作,需要的可以參考一下
    2022-06-06
  • 詳解pandas刪除缺失數(shù)據(jù)(pd.dropna()方法)

    詳解pandas刪除缺失數(shù)據(jù)(pd.dropna()方法)

    這篇文章主要介紹了pandas刪除缺失數(shù)據(jù)(pd.dropna()方法),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-06-06
  • 解決pytorch 損失函數(shù)中輸入輸出不匹配的問(wèn)題

    解決pytorch 損失函數(shù)中輸入輸出不匹配的問(wèn)題

    這篇文章主要介紹了解決pytorch 損失函數(shù)中輸入輸出不匹配的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-06-06
  • Python設(shè)計(jì)模式行為型責(zé)任鏈模式

    Python設(shè)計(jì)模式行為型責(zé)任鏈模式

    這篇文章主要介紹了Python設(shè)計(jì)模式行為型責(zé)任鏈模式,責(zé)任鏈模式將能處理請(qǐng)求的對(duì)象連成一條鏈,并沿著這條鏈傳遞該請(qǐng)求,直到有一個(gè)對(duì)象處理請(qǐng)求為止,避免請(qǐng)求的發(fā)送者和接收者之間的耦合關(guān)系,下圍繞改內(nèi)容介紹具有一點(diǎn)的參考價(jià)值,需要的朋友可以參考下
    2022-02-02
  • C#返回當(dāng)前系統(tǒng)所有可用驅(qū)動(dòng)器符號(hào)的方法

    C#返回當(dāng)前系統(tǒng)所有可用驅(qū)動(dòng)器符號(hào)的方法

    這篇文章主要介紹了C#返回當(dāng)前系統(tǒng)所有可用驅(qū)動(dòng)器符號(hào)的方法,涉及C#操作系統(tǒng)硬件驅(qū)動(dòng)的相關(guān)技巧,需要的朋友可以參考下
    2015-04-04
  • Python實(shí)現(xiàn)一個(gè)優(yōu)先級(jí)隊(duì)列的方法

    Python實(shí)現(xiàn)一個(gè)優(yōu)先級(jí)隊(duì)列的方法

    這篇文章主要介紹了Python實(shí)現(xiàn)一個(gè)優(yōu)先級(jí)隊(duì)列的方法,文中講解非常細(xì)致,代碼幫助大家更好的理解和學(xué)習(xí),感興趣的朋友可以了解下
    2020-07-07
  • python3中rsa加密算法詳情

    python3中rsa加密算法詳情

    這篇文章主要介紹了python3中rsa加密算法詳情,rsa加密,是一種加密算法,目前而言,加密算法,是對(duì)數(shù)據(jù)、密碼等進(jìn)行加密,下文更多相關(guān)介紹,需要的小伙伴可以參考一下
    2022-05-05
  • keras回調(diào)函數(shù)的使用

    keras回調(diào)函數(shù)的使用

    本文主要介紹了keras回調(diào)函數(shù)的使用,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-03-03
  • 基于Python socket實(shí)現(xiàn)簡(jiǎn)易網(wǎng)絡(luò)聊天室

    基于Python socket實(shí)現(xiàn)簡(jiǎn)易網(wǎng)絡(luò)聊天室

    本文主要介紹了基于Python socket實(shí)現(xiàn)簡(jiǎn)易網(wǎng)絡(luò)聊天室,本文將通過(guò)pyqt5作為桌面應(yīng)用框架,socket作為網(wǎng)絡(luò)編程的框架,從而實(shí)現(xiàn)包括客戶端和服務(wù)端的網(wǎng)絡(luò)聊天室的GUI應(yīng)用,需要的可以參考一下
    2022-07-07

最新評(píng)論