當前位置:首頁 » 編程語言 » pythonip判斷

pythonip判斷

發布時間: 2023-11-27 16:29:52

python3 判斷IP地址是否ping通

os.system(『comand』) 會執行括弧中的命令,如果命令成功執行,這條語句返回0,否則返回1。
要想得到標准輸出,可以使用os.popen(cmd)
import os
p=os.popen("ping 192.168.2.129")
x=p.read()
p.close()
if x.count('temeout'):
print("ping不通")
else:
print("ping通了")

⑵ Python 關於IP地址對錯的判斷

importre

defcheck_ip(ipAddr):
pattern=re.compile(r'(2(5[0-5]{1}|[0-4]d{1})|[0-1]?d{1,2})(.(2(5[0-5]{1}|[0-4]d{1})|[0-1]?d{1,2})){3}')
ifpattern.match(ipAddr):
returnTrue
else:
returnFalse

print(check_ip('111.111.111.111'))

⑶ 請教Python中匹配IP的正則表達式

\b(?:[0-9]{1,3}\.){3}[0-9]{1,3}\b

⑷ python 判斷ip是否能ping通

python編程下,檢查IP是否能ping通,並且分別導入兩個文件,代碼如下:

#!/usr/bin/python
#-*- coding:gb18030 -*-
'''
Created on 2015-7-7
#判斷文件中的ip是否能ping通,並且將通與不通的ip分別寫到兩個文件中
#文件中的ip一行一個
'''
import time,os
start_Time=int(time.time()) #記錄開始時間
def ping_Test():
ips=open('host.txt','r')
ip_True = open('ip_True.txt','w')
ip_False = open('ip_False.txt','w')
count_True,count_False=0,0
for ip in ips.readlines():
ip = ip.replace('\n','') #替換掉換行符
return1=os.system('ping -n 2 -w 1 %s'%ip) #每個ip ping2次,等待時間為1s
if return1:
print 'ping %s is fail'%ip
ip_False.write(ip) #把ping不通的寫到ip_False.txt中
count_False += 1
else:
print 'ping %s is ok'%ip
ip_True.write(ip) #把ping通的ip寫到ip_True.txt中
count_True += 1
ip_True.close()
ip_False.close()
ips.close()
end_Time = int(time.time()) #記錄結束時間
print "time(秒):",end_Time - start_Time,"s" #列印並計算用的時間
print "ping通數:",count_True," ping不通的ip數:",count_False
ping_Test()

⑸ python2.7 請幫忙寫一個函數確定某個ip是否能ping通。我的這個不行

你這樣直接使用os.system("ping")==0是不行的,執行ping命令後跟cmd執行一樣,也會返回類似於ttl=245 time=36.798 ms這樣的信息。所以你要做的是:
在os.system("ping -n 1 "+ip)的返回結果中查找是否存在"TTL="這樣的字元,如果存在表示ping通了,不存在就表示超時

⑹ python 判斷是ipv6還是ipv4 inet

ipv4與ipv6地址如何轉換的python解決辦法

ipv4與ipv6地址如何轉換的python解決辦法。要想知道ipv4與ipv6地址轉換的問題,首先要了解它的概念。

ipv4與ipv6地址是什麼簡單的來說一下:
IPv4:是互聯網協議的第四版,同時也是第一個被廣泛使用,構成現今互聯網技術的基石的協議;
IPv6:是互聯網工程任務組設計的用於替代現行版本IPv4的下一代IP協議;
目前IP協議的版本號是IPv4,它的下一個版本就是IPv6。

ipv4與ipv6地址如何轉換的python解決辦法,源碼如下:(需要用到twisted.python.compat及struct和python socket方法)

import struct,socket
#import twisted.python.compat #導入twisted.python.compat 更方便

# ipv4數字地址
def ipv4_to_string(ipv4):
ipv4_n = socket.htonl(ipv4)
data = struct.pack('I', ipv4_n)
ipv4_string = socket.inet_ntop(socket.AF_INET, data)
return ipv4_string

def ipv4_from_string(ipv4_string):
data = socket.inet_pton(socket.AF_INET, ipv4_string)
ipv4_n = struct.unpack('I', data)
ipv4 = socket.ntohl(ipv4_n[0])
return ipv4

def ipv4_readable2int(ipv4):
return int(ipv4)

def ipv4_int2readable(ipv4):
return str(ipv4)

# ipv6用四個整數(tuple或用,分開的字元串)表示
def ipv6_to_string(ipv6):
ipv6_n = (socket.htonl(ipv6[0]),
socket.htonl(ipv6[1]),
socket.htonl(ipv6[2]),
socket.htonl(ipv6[3]))
data = struct.pack('IIII', ipv6_n[0], ipv6_n[1], ipv6_n[2], ipv6_n[3])
ipv6_string = socket.inet_ntop(socket.AF_INET6, data)

return ipv6_string

def ipv6_from_string(ipv6_string):
data = socket.inet_pton(socket.AF_INET6, ipv6_string)
ipv6_n = struct.unpack('IIII', data)
ipv6 = (socket.ntohl(ipv6_n[0]),
socket.ntohl(ipv6_n[1]),
socket.ntohl(ipv6_n[2]),
socket.ntohl(ipv6_n[3]))

return ipv6

def ipv6_tuple2readable(ipv6):
return str(ipv6[0]) + ',' + str(ipv6[1]) + ',' + str(ipv6[2]) + ',' + str(ipv6[3])

def ipv6_readable2tuple(ipv6):
return tuple(ipv6.split(','))

#win32 下實現 inet_pton 和 inet_ntop
def inet_ntop(family, ipstr):
if family== socket.AF_INET:
return socket.inet_ntoa(ipstr)
elif family== socket.AF_INET6:
v6addr = ':'.join(('%02X%02X' % (ord(i), ord(j)))
for i,j in zip(ipstr[::2], ipstr[1::2]))
return v6addr

#www.iplaypy.com

def inet_pton(family, addr):
if family== socket.AF_INET:
return socket.inet_aton(addr)

elif family== socket.AF_INET6:
if '.' in addr: # a v4 addr
v4addr = addr[addr.rindex(':')+1:]
v4addr = socket.inet_aton(v4addr)
v4addr = map(lambda x: ('%02X' % ord(x)), v4addr)
v4addr.insert(2, ':')
newaddr = addr[:addr.rindex(':')+1] + ''.join(v4addr)
return inet_pton(family, newaddr)
dbyts = [0]* 8 # 8 groups
grps = addr.split(':')

for i,v in enumerate(grps):
if v:
dbyts[i] = int(v, 16)
else:
for j, w in enumerate(grps[::-1]):
if w:
dbyts[7-j] = int(w, 16)
else:
break
break
return ''.join( (chr(i//256) + chr(i%256)) for i in dbyts)

else:
raise RuntimeError("What family?")

⑺ pythonip代理池檢測巨量httpip地址

pythonip代理池檢測,可以使用巨量http在線監測工具

在線單次能添加100個ip同時在線驗證,方便,快捷!

一手率IP資源池:巨量HTTP代理IP池,均通過自營機房機櫃託管,當前全國部署200+城市,每日穩定產出千萬ip池,對於IP的純凈度、使用率更有保障。

獨家加密協議,更安全:IP採用隧道加密模式搭建,支持HTTP/HTTPS和SOCKS,以及一條隧道二種協議同時使用。

多種購買套餐類型:提供不限量ip套餐、按次/按量/包時ip套餐、獨享靜態長效ip套餐,獨家定製套餐

多種IP時長類型:IP時長從以前的1-5分鍾單一套餐,升級到現在的1-5分鍾,5-10分鍾,10-20分鍾,30-60分鍾套餐,以及推出隧道代理及獨享長效IP代理,能有效滿足各類業務場景。

IP提取策略:單次提取最高100個IP,間隔1秒,同時支持多並發提取與使用。

IP池數量:每日穩定輸出近千萬去重IP,並且每日0點,IP池自動更新,常年使用非重復性IP資源。

多元化套餐價格:通過不同的IP時長,提供更符合現價比的價格,同時常年推出活動,均能享受超低價格。

【獨家免費套餐】:不論新老用戶,注冊、實名均能領取永久免費使用的套餐。



熱點內容
蘋果手機備忘錄怎麼加密 發布:2024-05-19 18:57:57 瀏覽:15
光榮腳本 發布:2024-05-19 18:57:48 瀏覽:997
pythonjson字元串 發布:2024-05-19 18:51:43 瀏覽:253
什麼是伺服器廠商介紹 發布:2024-05-19 18:50:09 瀏覽:370
伺服器網卡硬體型號怎麼看 發布:2024-05-19 18:36:41 瀏覽:665
修改pve伺服器ip 發布:2024-05-19 18:31:52 瀏覽:468
微信密碼忘記了如何取出裡面的錢 發布:2024-05-19 18:27:35 瀏覽:329
vs2005反編譯 發布:2024-05-19 18:26:34 瀏覽:364
ug啟動語言腳本 發布:2024-05-19 18:25:57 瀏覽:874
緩存伺服器技術 發布:2024-05-19 18:25:56 瀏覽:885