当前位置:首页 » 编程语言 » 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时长,提供更符合现价比的价格,同时常年推出活动,均能享受超低价格。

【独家免费套餐】:不论新老用户,注册、实名均能领取永久免费使用的套餐。



热点内容
拉力竞速安卓用什么手柄 发布:2025-03-05 05:37:13 浏览:894
C编译多个 发布:2025-03-05 05:21:16 浏览:507
ftp有cd命令吗 发布:2025-03-05 04:47:20 浏览:575
云服务器比物理机的优势 发布:2025-03-05 04:46:05 浏览:467
俺妈密码是什么 发布:2025-03-05 04:40:46 浏览:160
yacclex编译器 发布:2025-03-05 04:35:37 浏览:151
安卓相片怎么转另一个手机 发布:2025-03-05 04:23:40 浏览:545
解压要素 发布:2025-03-05 04:16:05 浏览:791
观致网络模块怎么接入安卓车机 发布:2025-03-05 03:53:40 浏览:462
安卓如何被冥龙锁定后免伤 发布:2025-03-05 03:49:13 浏览:969