查询IP或域名所在地小程序

记得有一次,领导给我一张表,里面是一些IP和域名,需要查询这些IP和域名所在地。当时傻乎乎的直接用IP在baidu当中查询查看所在地,还用ping将域名转化IP….这件事一直放在心里,希望有个工具可以自动化地完成这件事,于是乎….请看代码:

#coding=utf-8

import re
import socket
import urllib
import urllib2
from bs4 import BeautifulSoup
import sys
import argparse


target = ""


def check_ip(line):
    reip = re.compile(r'(?<![\.\d])(?:\d{1,3}\.){3}\d{1,3}(?![\.\d])')
    if reip.match(line):
        return True

def usage():
    print "Hostname or IP To Province Tool"
    print "Usage: HostnameToAddr.py target_host"
    print "Examples: "
    print "------>HostnameToAddr.py 192.168.0.1"
    print "------>HostnameToAddr.py www.baidu.com"
    sys.exit()

def main():
    if not len(sys.argv[1:]):
        usage()

    global target

    sp = re.compile(r'(?<![\.\d])(?:\d{1,3}\.){3}\d{1,3}(?![\.\d])') 
    parse = argparse.ArgumentParser()
    parse.add_argument('target',help='server or client ipaddr')
    argments = parse.parse_args(sys.argv[1:])
    target = argments.target
    if not check_ip(target):
        try:
            ip = socket.gethostbyname(target)
        except:
            print "The Hostname/IP IS Unvalid !!!"
            sys.exit(1)
    else:
        ip = target
    p= {'wd': ip} 
    request = urllib2.urlopen("http://www.baidu.com/s?"+urllib.urlencode(p)+"&pn=1&cl=1&rn=2")
    data = request.read()
    soup = BeautifulSoup(data,"html.parser")

    itemlist = soup.findAll(name='div',attrs={'class':'c-span21 c-span-last op-ip-detail'})
    for item in itemlist:
        ip_text = item.get_text()
        print target + " is belong to: " + sp.split(ip_text)[1]

if __name__ == "__main__":
    main()
域名信息查询小程序主要功能域名解析记录查询 A记录:将域名指向一个IPv4地址(例如:10.10.10.10),需要增加A记录 CNAME记录:如果将域名指向一个域名,实现与被指向域名相同的访问效果,需要增加CNAME记录 MX记录:建立电子邮箱服务,将指向邮件服务器地址,需要设置MX记录 NS记录:域名解析服务器记录,如果要将子域名指定某个域名服务器来解析,需要设置NS记录 TXT记录:可任意填写(可为空),通常用做SPF记录(反垃圾邮件)使用 AAAA记录:将主机名(域名)指向一个IPv6地址(例如:ff03:0:0:0:0:0:0:c1),需要添加AAAA记录 SRV记录:记录了哪台计算机提供了哪个服务。格式为:服务的名字.协议的类型(例如:_example-server._tcp)域名信息查询小程序php端接口使用说明书推荐:需要linux+php环境支持,本人使用windows的nginx环境正常使用 备案域名绑定:已备案且需要在小程序后台添加白名单 https://支持:需要域名ssl证书支持 其他说明1:实时查询解析信息,无需个人后续更新维护域名信息查询小程序小程序端说明书功能已经在本地测试环境正常使用,(详见压缩包内截图)适合学习:可以作为各种查询功能模板,非常实用。 域名查询:实时查询域名解析信息,非常实用。 测试建议:你可以不填写APPID直接用微信小程序开发者工具测试。 域名信息查询小程序截图
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值