python批量生成本地ip地址的方法
文章主要介紹了python批量生成本地ip地址的方法,實例分析了Python實現生成本地IP地址并綁定到網卡上的技巧,具有一定參考借鑒價值,需要的朋友可以參考下。
這段代碼用于在本地計算機上生成本地ip地址綁定到網卡,生成的是一個bat的批處理文件,運行此批處理文件,可以通過ipconfig查看
#!/usr/bin/python2.7
# -*- coding: utf-8 -*-
# Filename: AddIPAliases.py
import re,sys,socket,struct
# 1. 判斷IP地址是否合法; 2. 判斷用戶輸入的IP是否在Class A,Class B 或 Class C中
def CheckIP(IP,IPClassesInt):
regexIP=re.compile('^([01]?dd?|2[0-4]d|25[0-5]).([01]?dd?|2[0-4]d|25[0-5]).([01]?dd?|2[0-4]d|25[0-5]).([01]?dd?|2[0-4]d|25[0-5])$')
Checking=regexIP.match(IP)
if Checking==None:
IP=raw_input("親!請輸入合法的IP地址哈: ")
return CheckIP(IP,IPClassesInt)
else:
IPInt=struct.unpack('!L',socket.inet_aton(IP))[0]
if IPInt not in range(IPClassesInt[0],IPClassesInt[1]+1) and IPInt not in range(IPClassesInt[2],IPClassesInt[3]+1) and IPInt not in range(IPClassesInt[4],IPClassesInt[5]+1):
IP=raw_input("親!您輸入的IP地址不在Class A,Class B或Class C中,請閱讀提示信息并重新輸入IP地址:")
return CheckIP(IP,IPClassesInt)
else: return IP
# 判斷輸入的數字是否合法
def CheckIPCount(IPCount):
regexIPCount=re.compile('d+')
Checking=regexIPCount.match(IPCount)
if Checking==None:
IPCount=raw_input("親!請輸入合法的數量:")
return CheckIPCount(IPCount)
else: return IPCount
# 為用戶生成指定數量的IP
def MakeIps(IPInt,IPCount,IPIntBool):
targetBat=open('AddIPAliases.bat','w+')
targetCSV=open('AddIPAliases.csv','w+')
# 判斷IP地址的數量是否在Class A,Class B或Class C的范疇中
if int(IPCount)>(IPClassesInt[IPIntBoolTrue[1][2]]-IPInt+1):
IPCount=raw_input("親!您輸入的IP數量超過了"+IPIntBoolTrue[0]+"的范疇,請重新輸入:")
return MakeIps(IPInt,IPCount,IPIntBool)
【python批量生成本地ip地址的方法】相關文章:
Python獲取IP地址的三種方法09-29
python使用Flask框架獲取用戶IP地址的方法08-26
python使用Flask框架獲取用戶IP地址有什么辦法09-07
php獲取IP物理地址的方法10-10
查看路由器IP地址方法07-01
IP地址和MAC地址分類08-10
php通過Chianz.com獲取IP地址與地區的方法08-12
win10查看本機電腦IP地址方法07-25