大多數用筆記本電腦的朋友都有一個煩惱,那就是在家裏和公司的IP地址不同,上班和回家後都得來回切換IP地址,兩個字「麻煩」。php
貼上用python寫的自動切換IP小程序html
注:須要下面兩個模塊的支持,請朋友們下載自行安裝。python
Python for Windows extensions(pywin32)網絡
源碼以下:ui
# -*- coding: cp936 -*- # # FileName: ModifyIP.py # Date : 2008-01-15 # import wmi print'正在修改IP,請稍候...' wmiService = wmi.WMI() colNicConfigs = wmiService.Win32_NetworkAdapterConfiguration(IPEnabled=True) #for objNicConfig in colNicConfigs: # print objNicConfig.Index # print objNicConfig.SettingID # print objNicConfig.Description.encode("cp936") # print objNicConfig.IPAddress # print objNicConfig.IPSubnet # print objNicConfig.DefaultIPGateway # print objNicConfig.DNSServerSearchOrder if len(colNicConfigs)<1: print'沒有找到可用的網絡適配器' exit() objNicConfig = colNicConfigs[0] #for method_name in objNicConfig.methods: # method = getattr(objNicConfig, method_name) # print method arrIPAddresses =['172.16.151.147'] arrSubnetMasks =['255.255.255.0'] arrDefaultGateways =['172.16.151.1'] arrGatewayCostMetrics =[1] arrDNSServers =['172.16.151.10'] intReboot =0 returnValue = objNicConfig.EnableStatic(IPAddress= arrIPAddresses,SubnetMask= arrSubnetMasks) if returnValue[0]==0: print'設置IP成功' elif returnValue[0]==1: print'設置IP成功' intReboot +=1 else: print'修改IP失敗: IP設置發生錯誤' exit() returnValue = objNicConfig.SetGateways(DefaultIPGateway= arrDefaultGateways,GatewayCostMetric= arrGatewayCostMetrics) if returnValue[0]==0: print'設置網關成功' elif returnValue[0]==1: print'設置網關成功' intReboot +=1 else: print'修改IP失敗: 網關設置發生錯誤' exit() returnValue = objNicConfig.SetDNSServerSearchOrder(DNSServerSearchOrder= arrDNSServers) if returnValue[0]==0: print'設置DNS成功' elif returnValue[0]==1: print'設置DNS成功' intReboot +=1 else: print'修改IP失敗: DNS設置發生錯誤' exit() if intReboot >0: print'須要從新啓動計算機' else: print'' print'修改後的配置爲:' print'IP: ',', '.join(objNicConfig.IPAddress) print'掩碼: ',', '.join(objNicConfig.IPSubnet) print'網關: ',', '.join(objNicConfig.DefaultIPGateway) print'DNS: ',', '.join(objNicConfig.DNSServerSearchOrder) print'修改IP結束'
功能上述已經實現了,如今咱們再把它作成EXE執行文件,畢竟在Windows下,使用起來方便,一勞永逸呀!:)spa
一、創建編譯文件setup.py.net
代碼以下:code
from distutils.core import setup import py2exe setup(console=['ModifyIP.py'])
二、進行編譯htm
python setup.py py2exe
若是朋友們沒有安裝py2exe,請點擊這裏下載py2exe.exe並安裝。注意要找對應於你所安裝的python版本。
三、執行exe文件
編譯之後會自動生成build和dist兩個文件夾,生成的exe文件在dist文件夾中,咱們只要保留dist文件夾下的全部文件(必須所有保留),build文件夾能夠刪除。