欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程语言 > python >内容正文

python

python获取当前服务器ip_Python实现获取域名所用服务器的真实IP

发布时间:2025/4/5 python 55 豆豆
生活随笔 收集整理的这篇文章主要介绍了 python获取当前服务器ip_Python实现获取域名所用服务器的真实IP 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

本来是要写个程序用的,没写完不写了,这一部分就贴出来吧

验证域名和IP

class JianKong():

'''查询IDC信息,封ip和过白名单'''

def __init__(self):

pass

@classmethod

def ip_verify(cls,str):

'验证IP地址规范'

pattern=re.compile('(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])\.(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])\.(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])\.(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])')

s=pattern.findall(str)

if len(s)>0:

ip=s[0][0]+'.'+s[0][1]+'.'+s[0][2]+'.'+s[0][3]

return ip

else:

print 'IP格式不正确'#弹窗提醒

return ''

@classmethod

def domain_verify(cls,domainStr):

'验证域名规范,返回合法域名列表'

domainList=[]

file=open('c:\domain.txt','r')

domainType=file.readlines()

#去重

domainType=list(set(domainType))

#print domainType

file.close()

#file=['com','ac','com.cn','net'+'']

for line in domainType:

#文件中动态读取每个顶级域名进行匹配

line=line.strip()

pattern=re.compile('([a-z0-9][a-z0-9\-]*?\.'+line+')(?:\s|$)+',re.S)

#例如[a-z0-9][a-z0-9\-]*?\.com.cn(?:\s|$)+ 中(?:\s|$)表示域名后缀后面必须是空白符或者字符结束(?:)表示括号不用于分组功能

#防止.com.cn先匹配到.com即停止匹配导致错误,或者匹配到.comc多了字符

result=pattern.findall(domainStr)

if len(result)>0:

#正确结果添加到返回列表

domainList=domainList+result

#去重

domainList=list(set(domainList))

newList=[]

for d in domainList:

if d not in domainType and d+'\n' not in domainType:

newList.append(d)

return newList

@classmethod

def getDomainType(cls):

'从工信部网站获取所有合法域名后缀'

file=open('c:/domain.txt','w')

p=re.compile('class=\"by2\">\.(.*?)\ ', re.S)

for i in range(1,23):

data='domainName=&domainBlur=0&page.pageSize=20&pageNo='+str(i)+'&jumpPageNo='+str(i)

header={'Host':'www.miitbeian.gov.cn','Origin':'http://www.miitbeian.gov.cn','User-Agent':'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/44.0.2403.157 UBrowser/5.5.6125.14 Safari/537.36','Referer':'http://www.miitbeian.gov.cn/basecode/query/queryDomain.action;jsessionid=HSTRWpLZbR0cX4vFkDpnpbNBYyRl4GwW1fxpyhdyc0fcfhkvJTBV!1139295987'}

url='http://www.miitbeian.gov.cn/basecode/query/queryDomain.action;jsessionid=HSTRWpLZbR0cX4vFkDpnpbNBYyRl4GwW1fxpyhdyc0fcfhkvJTBV!1139295987'

request=urllib2.Request(url,data,header)

response=urllib2.urlopen(request)

recv=response.read()

s=p.findall(recv)

#print s

#去重

s=list(set(s))

for y in s:

file.write(y+'\n')

file.flush()

#print str(i)+' '+y

file.close()

print '完毕'#弹窗完成

本文标题: Python实现获取域名所用服务器的真实IP

本文地址: http://www.cppcns.com/jiaoben/python/133600.html

总结

以上是生活随笔为你收集整理的python获取当前服务器ip_Python实现获取域名所用服务器的真实IP的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。