您的位置:首页 > 博客中心 > 前端开发 >

python实现whois查询功能的方法源码

时间:2022-04-09 16:56

恐怕很多朋友跟我一样,使用居然能实现whois服务器查询功能。下面我把代码和说明搬来给大家看看,有谁需要可以参考下。本来想直接从whois服务器查询的,但是发现要写socket 用43端口链接服务器,但是有些服务器的地址不清楚,而且查询命令貌似有改变所以不想折腾了,就想着直接用chinaz的页面实现一下算了。如下代码是在 win7下操作的,安装python3.2测试通过。

QQ截图20160420200120.png

Python3.2实现whois查询功能的方法源码:

# -*- coding:utf-8 -*-

 

import urllib.request

 

def str_cut(str,startsep,endsep):

    str1=str.split(startsep)[1]

    str2=str1.split(endsep)[0]

    return str2

 

def whois(host):

      url=’http://whois.chinaz.com/’+host

      data=urllib.request.urlopen(url).read()

      data=data.decode()

      if data.find(’<div id="whoisinfo" class="div_whois">’)==-1:

          data="该域名未注册,目前可以注册"

      else:

          data=str_cut(data,’<div id="whoisinfo" class="div_whois">’,’</div>’)

          data=data.replace(’<br/>’,’\\n’)[:-1]

      return ’查询域名:’+host+’\\n’+’-’*60+’\\n’+data

 

def query():

   host=input(’请输入域名不含";(q/Q退出):’)[:-1]

   #data=whois(host)

   #print(data)

   host=host.lower()

   if host == ’q’:

       exit()

   else:

       data=whois(host)

       print(data)

       input(’\\n输入enter继续...\\n’)

   query()

query()

考虑到有些朋友在使用Python2.7版本,使用以上的代码会出现一些错误,我修改了一点,以便运行:

# -*- coding:utf-8 -*-

import urllib

 

def str_cut(str,startsep,endsep):

    str1=str.split(startsep)[1]

    str2=str1.split(endsep)[0]

    return str2

 

def whois(host):

      url=’http://whois.chinaz.com/’+host

      data=urllib.urlopen(url).read()

      if data.find(’<div id="whoisinfo" class="div_whois">’)==-1:

          data="该域名未注册,目前可以注册"

      else:

          data=str_cut(data,’<div id="whoisinfo" class="div_whois">’,’</div>’)

          data=data.replace(’<br/>’,’\\n’)

      return ’查询域名:’+host+’\\n’+’-’*60+’\\n’+data

 

def query():

   host=raw_input(’请输入域名不含";(q/Q退出):’)

   host=host.lower()

   if host == ’q’:

       exit()

   else:

       data=whois(host)

       print(data)

       raw_input(u’输入enter继续...\\n’)

        

query()

以上就是Python实现whois查询功能的方法,Python3和Python2都给出来了,希望能帮助到大家。

本类排行

今日推荐

热门手游