精华内容
下载资源
问答
  • 在查询框中输入你要查询的IP地址,点击查询按钮后即可在下方的地图中定位该IP地址。 IP定位较为精准,一般误差不差过100米-300米。 该源码仅供娱乐,不要用于非法用途 因为不需要后期维护,所以没有管理后台。
  • 主要介绍了python实现ip地址查询经纬度定位详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
  • 一款百度地图api输入IP进行查询获取json数据,查询ip定位的详细地址信息jQuery查询定位代码。
  • jQuery根据IP查询定位地址代码是一款百度地图api输入IP进行查询获取json数据,查询ip定位的详细地址信息。
  • 来位大腿定位ID地址,可见面现金交易,联系qq951937439
  • <html xmlns="http://www.w3.org/1999/xhtml"><head> <title>根据地址查询经纬度</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <script ty...

    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <title>根据地址查询经纬度</title>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <script type="text/javascript" src="http://api.map.baidu.com/api?v=1.3"></script>
    </head>
    <body style="background:#CBE1FF">
    <div style="width:730px;margin:auto;">
    要查询的地址:<input id="text_" type="text" value="徐州古彭广场" style="margin-right:100px;"/>
    查询结果(经纬度):<input id="result_" type="text" />
    <input type="button" value="查询" οnclick="searchByStationName();"/>
    <div id="container"
    style="position: absolute;
    margin-top:30px;
    width: 730px;
    height: 590px;
    top: 50;
    border: 1px solid gray;
    overflow:hidden;">
    </div>
    </div>
    </body>
    <script type="text/javascript">
    var map = new BMap.Map("container");
    map.centerAndZoom("徐州", 12);
    map.enableScrollWheelZoom(); //启用滚轮放大缩小,默认禁用
    map.enableContinuousZoom(); //启用地图惯性拖拽,默认禁用
    map.addControl(new BMap.NavigationControl()); //添加默认缩放平移控件
    map.addControl(new BMap.OverviewMapControl()); //添加默认缩略地图控件
    map.addControl(new BMap.OverviewMapControl({ isOpen: true, anchor: BMAP_ANCHOR_BOTTOM_RIGHT })); //右下角,打开
    var localSearch = new BMap.LocalSearch(map);
    localSearch.enableAutoViewport(); //允许自动调节窗体大小
    function searchByStationName() {
    map.clearOverlays();  //清空原来的标注
    var keyword = document.getElementById("text_").value;
    localSearch.setSearchCompleteCallback(function (searchResult) {
    var poi = searchResult.getPoi(0);
    document.getElementById("result_").value = poi.point.lng + "," + poi.point.lat;
    map.centerAndZoom(poi.point, 13);
    var marker = new BMap.Marker(new BMap.Point(poi.point.lng, poi.point.lat));    // 创建标注,为要查询的地方对应的经纬度
    map.addOverlay(marker);
    var content = document.getElementById("text_").value + "<br/><br/>经度:" + poi.point.lng + "<br/>纬度:" + poi.point.lat;
    var infoWindow = new BMap.InfoWindow("<p style='font-size:14px;'>" + content + "</p>");
    marker.addEventListener("click", function () { this.openInfoWindow(infoWindow); });
    //marker.setAnimation(BMAP_ANIMATION_BOUNCE);   //跳动的动画
    });
    localSearch.search(keyword);
    }
    </script>
    </html>

    显示:

    代码来源于:http://www.jb51.net/article/58396.htm

    转载于:https://www.cnblogs.com/l-zl/p/6514512.html

    展开全文
  • 1、此api已经关闭 https://api.map.baidu.com/highacciploc/v1?qcip=220.181.38.113&ak=你申请的AK&extensions=1&coord=bd09ll 2、现在改成 API首页:...

     1、此api已经关闭

        https://api.map.baidu.com/highacciploc/v1?qcip=220.181.38.113&ak=你申请的AK&extensions=1&coord=bd09ll

    2、现在改成

    API首页:http://lbsyun.baidu.com/index.php?title=webapi/ip-api
    使用方式:https://api.map.baidu.com/location/ip?ak=请输入您的AK&coor=bd09ll
    # -*- coding: utf-8 -*-
    
    import urllib
    import urllib2
    import json
    import sys
    reload(sys)
    sys.setdefaultencoding('utf-8')
    
    class SendUrl(object):
    
        def send_url(self, url, headers, data=None):
            opener = urllib2.build_opener()
            request = urllib2.Request(url, data=data, headers=headers)
            response = opener.open(request, timeout=10)
            js = json.loads(response.read().decode("utf-8"))
            print(type(js))
            #print(dir(js))
            #print(js)
            print("================================================")
            print('位置:'+ js['content']['address_detail']['province'] + js['content']['address_detail']['city'])
            print('纬度:'+ js['content']['point']['y'])
            print('经度:'+ js['content']['point']['x'])
            print('节点:'+ js['address'])
            print("================================================")
    
    
    def Main():
        # ak 需自行注册
        ak = "xxxxxxxxxxxxxxxxxxxxxxxxx"
        sx = SendUrl()
    
        url = "https://api.map.baidu.com/location/ip"
        data = {"ip": "36.101.234.14", "ak": ak, "coor": "bd09ll"}
        headers = {
            'User-Agent': "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36"}
        sx.send_url(url, headers, data=urllib.urlencode(data))
    
    
    if __name__ == '__main__':
        Main()

     

    转载于:https://www.cnblogs.com/linyouyi/p/10739850.html

    展开全文
  • 有的时候我们需要查询访问我们系统的IP的地址,并且记录下访问IP的物理地址。但是用接口调用不稳定,如...所以我们提供一个IP定位库。 首先,提供一个jar包。 compile group: 'org.lionsoul', name: 'ip2region',...

    有的时候我们需要查询访问我们系统的IP的地址,并且记录下访问IP的物理地址。但是用接口调用不稳定,如:淘宝的地址

    http://ip.taobao.com/service/getIpInfo.php?ip=180.169.29.21

    所以我们提供一个IP定位库。

    首先,提供一个jar包。

    compile group: 'org.lionsoul', name: 'ip2region', version: '1.7.2'

    并且提供定位库:

    参考地址:https://blog.51cto.com/14309075/2390060

    其次:查找用户的IP。

    /**
    	 * 获取IP地址
    	 *
    	 * 使用Nginx等反向代理软件, 则不能通过request.getRemoteAddr()获取IP地址
    	 * 如果使用了多级反向代理的话,X-Forwarded-For的值并不止一个,而是一串IP地址,X-Forwarded-For中第一个非unknown的有效IP字符串,则为真实IP地址
    	 */
    	public static String getIpAddr(HttpServletRequest request) {
    		String ip = null;
    		try {
    			ip = request.getHeader("x-forwarded-for");
    			if (StringUtils.isEmpty(ip) || "unknown".equalsIgnoreCase(ip)) {
    				ip = request.getHeader("Proxy-Client-IP");
    			}
    			if (StringUtils.isEmpty(ip) || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
    				ip = request.getHeader("WL-Proxy-Client-IP");
    			}
    			if (StringUtils.isEmpty(ip) || "unknown".equalsIgnoreCase(ip)) {
    				ip = request.getHeader("HTTP_CLIENT_IP");
    			}
    			if (StringUtils.isEmpty(ip) || "unknown".equalsIgnoreCase(ip)) {
    				ip = request.getHeader("HTTP_X_FORWARDED_FOR");
    			}
    			if (StringUtils.isEmpty(ip) || "unknown".equalsIgnoreCase(ip)) {
    				ip = request.getRemoteAddr();
    			}
    		} catch (Exception e) {
    			logger.error("IPUtils ERROR ", e);
    		}
    		return ip;
    	}

    查询出IP地址后,这样我们根据IP地址查询物理地址。

    import org.apache.commons.lang3.StringUtils;
    import org.lionsoul.ip2region.DataBlock;
    import org.lionsoul.ip2region.DbConfig;
    import org.lionsoul.ip2region.DbSearcher;
    import org.lionsoul.ip2region.Util;
    import org.slf4j.Logger;
    import org.slf4j.LoggerFactory;
    import org.springframework.web.context.request.RequestContextHolder;
    import org.springframework.web.context.request.ServletRequestAttributes;
    
    import javax.servlet.http.HttpServletRequest;
    import java.io.File;
    import java.lang.reflect.Method;
    
    /**
     * IP地址
     */
    public class IPUtils {
    
    	private static Logger logger = LoggerFactory.getLogger(IPUtils.class);
    
    	/**
    	 * 获取IP地址
    	 * 使用Nginx等反向代理软件, 则不能通过request.getRemoteAddr()获取IP地址
    	 * 如果使用了多级反向代理的话,X-Forwarded-For的值并不止一个,而是一串IP地址,X-Forwarded-For中第一个非unknown的有效IP字符串,则为真实IP地址
    	 */
    	public static String getIpAddr() {
    		String ip = null;
    		try {
    			HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
    			ip = request.getHeader("x-forwarded-for");
    			if (StringUtils.isEmpty(ip) || "unknown".equalsIgnoreCase(ip)) {
    				ip = request.getHeader("Proxy-Client-IP");
    			}
    			if (StringUtils.isEmpty(ip) || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
    				ip = request.getHeader("WL-Proxy-Client-IP");
    			}
    			if (StringUtils.isEmpty(ip) || "unknown".equalsIgnoreCase(ip)) {
    				ip = request.getHeader("HTTP_CLIENT_IP");
    			}
    			if (StringUtils.isEmpty(ip) || "unknown".equalsIgnoreCase(ip)) {
    				ip = request.getHeader("HTTP_X_FORWARDED_FOR");
    			}
    			if (StringUtils.isEmpty(ip) || "unknown".equalsIgnoreCase(ip)) {
    				ip = request.getRemoteAddr();
    			}
    		} catch (Exception e) {
    			logger.error("IPUtils ERROR ", e);
    		}
    		// 使用代理,则获取第一个IP地址
    		if (StringUtils.isNotEmpty(ip) && ip.length() > 15) {
    			if (ip.indexOf(",") > 0) {
    				ip = ip.substring(0, ip.indexOf(","));
    			}
    		}
    		return ip;
    	}
    
    	/**
    	 * 获取IP地址
    	 *
    	 * 使用Nginx等反向代理软件, 则不能通过request.getRemoteAddr()获取IP地址
    	 * 如果使用了多级反向代理的话,X-Forwarded-For的值并不止一个,而是一串IP地址,X-Forwarded-For中第一个非unknown的有效IP字符串,则为真实IP地址
    	 */
    	public static String getIpAddr(HttpServletRequest request) {
    		String ip = null;
    		try {
    			ip = request.getHeader("x-forwarded-for");
    			if (StringUtils.isEmpty(ip) || "unknown".equalsIgnoreCase(ip)) {
    				ip = request.getHeader("Proxy-Client-IP");
    			}
    			if (StringUtils.isEmpty(ip) || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
    				ip = request.getHeader("WL-Proxy-Client-IP");
    			}
    			if (StringUtils.isEmpty(ip) || "unknown".equalsIgnoreCase(ip)) {
    				ip = request.getHeader("HTTP_CLIENT_IP");
    			}
    			if (StringUtils.isEmpty(ip) || "unknown".equalsIgnoreCase(ip)) {
    				ip = request.getHeader("HTTP_X_FORWARDED_FOR");
    			}
    			if (StringUtils.isEmpty(ip) || "unknown".equalsIgnoreCase(ip)) {
    				ip = request.getRemoteAddr();
    			}
    		} catch (Exception e) {
    			logger.error("IPUtils ERROR ", e);
    		}
    		return ip;
    	}
    
    	/**
    	 * 根据IP地址查询所在物理位置
    	 *
    	 * @param ip
    	 * @return
    	 */
    	public static String getAddress(String ip){
    
    		String dbPath = IPUtils.class.getResource("/ip2region.db").getPath();
    
    		File file = new File(dbPath);
    
    		if ( file.exists() == false ) {
    			System.out.println("Error: Invalid ip2region.db file");
    		}
    
    		//查询算法
    		int algorithm = DbSearcher.BTREE_ALGORITHM; //B-tree
    		//DbSearcher.BINARY_ALGORITHM //Binary
    		//DbSearcher.MEMORY_ALGORITYM //Memory
    		try {
    			DbConfig config = new DbConfig();
    			DbSearcher searcher = new DbSearcher(config, dbPath);
    
    			//define the method
    			Method method = null;
    			switch ( algorithm )
    			{
    				case DbSearcher.BTREE_ALGORITHM:
    					method = searcher.getClass().getMethod("btreeSearch", String.class);
    					break;
    				case DbSearcher.BINARY_ALGORITHM:
    					method = searcher.getClass().getMethod("binarySearch", String.class);
    					break;
    				case DbSearcher.MEMORY_ALGORITYM:
    					method = searcher.getClass().getMethod("memorySearch", String.class);
    					break;
    			}
    
    			DataBlock dataBlock = null;
    			if ( Util.isIpAddress(ip) == false ) {
    				logger.error("Error: Invalid ip address");
    			}
    
    			dataBlock  = (DataBlock) method.invoke(searcher, ip);
    			String address=dataBlock.getRegion();
    			System.out.println("address====>"+address);
    			String countryName=address.substring(0,2);
    			String provinceName=address.substring(5,8);
    			String cityName=address.substring(9,12);
    			System.out.println("countryName="+countryName+",provinceName="+provinceName+",cityName="+cityName);
    			return dataBlock.getRegion();
    
    		} catch (Exception e) {
    			e.printStackTrace();
    		}
    
    		return null;
    	}
       public static void main(String[] args){
    	   getAddress("42.203.192.25");
       }
    }
    

    最后。根据地址信息查询天气信息

     @CrossOrigin(origins = "*")
        @ApiOperation(value="今日天气")
        @RequestMapping(name = "今日天气", value = {"/todayWeather"}, method = RequestMethod.GET)
        public Result todayWeather(HttpServletRequest request)throws Exception{
            //根据ip查询当前地址
            String ip= IPUtils.getIpAddr(request);
            //根据ip查询当前地址
            /*String addressUrl="http://ip.taobao.com/service/getIpInfo.php?ip=";
            logger.info("当前机器的ip地址是:"+ip);
            if(ip!=null){
                addressUrl+=ip;
            }else{
                addressUrl= "http://ip.taobao.com/service/getIpInfo.php?ip=180.169.29.210";
            }
            Response addressResponse=OkHttpUtils.get(addressUrl);
            ResponseBody addressResponseBody=addressResponse.body();
            if(addressResponse.isSuccessful()&&addressResponseBody!=null){
                String addressInfo=addressResponseBody.string();
                logger.info("当前地址信息是:"+addressInfo);
            }*/
            //根据IP地址查询IP所在位置
            String address=IPUtils.getAddress(ip);
            logger.info("ip地址====>"+address);
            String cityId=null;
            if(address!=null&&!address.contains("内网IP")){
                String cityName=address.substring(9,12);
                List<SysArea> sysAreas=sysAreaService.getAreas(cityName);
                if(sysAreas!=null&&sysAreas.size()>0){
                    cityId=sysAreas.get(0).getCityId();
                }else{
                    cityId="101021300";
                }
            }else{
                cityId="101021300";
            }
    
            Map<String,Object> weatherMap=new HashMap<>();
            //查询天气1
            String url="http://www.weather.com.cn/data/cityinfo/"+cityId+".html";
            Response response=OkHttpUtils.get(url);
            ResponseBody responseBody=response.body();
            if(response.isSuccessful()&&responseBody!=null){
                String info=responseBody.string();
                JSONObject jsonObject=JSONObject.parseObject(info);
                JSONObject weatherinfo=JSONObject.parseObject(jsonObject.get("weatherinfo").toString());
                String imgUrl="http://www.weather.com.cn/m2/i/icon_weather/29x20/";
                //当前城市
                weatherMap.put("city",weatherinfo.get("city"));
                //天气图片
                weatherMap.put("pic1",imgUrl+weatherinfo.get("img1"));
                weatherMap.put("pic2",imgUrl+weatherinfo.get("img2"));
                //天气范围
                weatherMap.put("tempRegion",weatherinfo.get("temp1")+"--"+weatherinfo.get("temp2"));
                //当前天气
                weatherMap.put("weather",weatherinfo.get("weather"));
            }else{
                return Result.failure("今日天气失败");
            }
            //查询天气2
            String url1="http://www.weather.com.cn/data/sk/101010100.html";
            Response response1=OkHttpUtils.get(url1);
            ResponseBody responseBody1=response1.body();
            if(response1.isSuccessful()&&responseBody1!=null){
                String info=responseBody1.string();
                JSONObject jsonObject1=JSONObject.parseObject(info);
                JSONObject weatherinfo1=JSONObject.parseObject(jsonObject1.get("weatherinfo").toString());
                //当前温度
                weatherMap.put("temp",weatherinfo1.get("temp"));
                //风向
                weatherMap.put("WD",weatherinfo1.get("WD"));
                //风级
                weatherMap.put("WS",weatherinfo1.get("WS"));
                //相对湿度SD
                weatherMap.put("SD",weatherinfo1.get("SD"));
                return Result.ok("查询天气成功",weatherMap);
            }else{
                return Result.failure("今日天气失败");
            }
        }

     

    展开全文
  • 准确率99.9%的ip地址定位库,0.0x毫秒级查询,数据库文件大小只有1.5M,提供了java,php,c,python,nodejs,golang查询绑定和Binary,B树,内存三种查询算法,妈妈再也不用担心我的ip地址定位
  • 今天小编推荐一款Ip地址库,准确率99.9%的离线IP地址定位库,0.0x毫秒级查询,这个库数据库只有数MB,提供了java,php,c,python,nodejs,golang,c#等查询绑定和Binary,B树,内存三种查询算法。 开源协议   使用 A

      大家好,我是为广大程序员兄弟操碎了心的小编,每天推荐一个小工具/源码,装满你的收藏夹,每天分享一个小技巧,让你轻松节省开发效率,实现不加班不熬夜不掉头发,是我的目标!

      咱们程序员开发任何系统,基本上都需要查询IP地址,比如操作日志、登录IP等等。今天小编推荐一款Ip地址库,准确率99.9%的离线IP地址定位库,0.0x毫秒级查询,这个库数据库只有数MB,提供了java,php,c,python,nodejs,golang,c#等查询绑定和Binary,B树,内存三种查询算法。

    开源协议

      使用 Apache-2.0 开源许可协议

    链接地址

      公众号【Github导航站】回复关键词【ip2】获取git地址

    99.9%准确率

      数据聚合了一些知名ip到地名查询提供商的数据,这些是他们官方的的准确率,经测试着实比经典的纯真IP定位准确一些。
      本库数据聚合自以下服务商的开放API或者数据(升级程序每秒请求次数2到4次):

    • 01, >80%, 淘宝IP地址库
    • 02, ≈10%, GeoIP
    • 03, ≈2%, 纯真IP库
      **备注:**如果上述开放API或者数据都不给开放数据时,该库将停止数据的更新服务。

    标准化的数据格式

      每条ip数据段都固定了格式:

    _城市Id|国家|区域|省份|城市|ISP_
    

      只有中国的数据精确到了城市,其他国家有部分数据只能定位到国家,后前的选项全部是0,已经包含了全部你能查到的大大小小的国家(请忽略前面的城市Id,个人项目需求)。

    体积小

      包含了全部的IP,生成的数据库文件只有几MB,最小的版本只有1.5MB,随着数据的详细度增加数据库的大小也慢慢增大,目前还没超过8MB。

    查询速度快

      全部的查询客户端单次查询都在0.x毫秒级别,内置了三种查询算法

    1. memory算法:整个数据库全部载入内存,单次查询都在0.1x毫秒内,C语言的客户端单次查询在0.00x毫秒级别。
    2. binary算法:基于二分查找,不需要载入内存,单次查询在0.x毫秒级别。
    3. b-tree算法:基于btree算法,不需要载入内存,单词查询在0.x毫秒级别,比binary算法更快。

    任何客户端b-tree都比binary算法快,当然memory算法固然是最快的!

    多查询客户端的支持

    已经集成的客户端有:java、C#、php、c、python、nodejs、php扩展(php5和php7)、golang、rust、lua、lua_c, nginx。

    image-20210321114217969

    结尾

      本期就分享到这里,我是小编南风吹,专注分享好玩有趣、新奇、实用的开源项目及开发者工具、学习资源!希望能与大家共同学习交流,欢迎关注我的公众号**【Github导航站】**。

    展开全文
  • http://wifi.tongxinmao.com/Public/macaddr 个别路由MAC地址查不了   路由MAC可以通过手机APP或WIFI探测周围路由  
  • 一、高精准IP地址定位 IP地址定位技术,是通过设备的IP地址来确定其地理位置。近年来,IP地址定位技术受到越来越多的关注,随着互联网日新月异的发展,市场中的IP地址定位产品存在数据陈旧、定位颗粒度粗糙(仅...
  • http://www.thinkphp.cn/extend/948.html
  • ip定位查询

    2019-09-14 07:39:20
    ip定位查询: 通过ip可以查询到你所在的地址 参见:http://www.haoservice.com/docs/5 示例: {"resultcode":0,"reason":"查询成功","result":{"IP":"61.135.185.212","address":...
  • IP地址精准定位系统源码可以搭建一个IP地址定位查询的网站,但是该源码仅供娱乐和学习,不要使用该源码去做任何违法的事情,否则一切后果自负。因为源码没有后续的维护工作,所以也就没有管理地址,直接下载解压后将...
  • 环境: centos 7.5 python 3.6 ...Python Django 搭建纯净IP地址返回服务(返回访问者IP地址) 记录用户访问页面 获取用户访问页面 server_name = request.META.get(‘SERVER_NAME’) def get_ip(...
  • IP地址定位.rar

    2019-08-02 17:15:16
    IP地址定位 输入IP即可查询到地址 IP网免费提供高精度IP地址解析服务,数据实时更新,多种IP库同时显示,能精确到网吧,街道,公司等 定位任意一个有效的IP地址,并告诉你这个IP地址的位置信息国家,省,城市
  • ip 定位查询

    2015-04-21 09:21:10
    ip定位查询: 通过ip可以查询到你所在的地址 参见:http://www.haoservice.com/docs/5 示例: { "resultcode": 0, "reason": "查询成功", "result": { "IP": "61.135.185.212", "address": "北京市...
  • 首先在需要定位的地方先申请权限. 这一步略过不谈, 清单文件 然后直接调用下面代码. 注意! 百度在线解析有日限额, 貌似未认证的用户是6千次吧好像. 账户认证了开发者信息后就可以免费提额到30万每天. ...
  • IP地址定位

    2019-04-15 17:50:12
    输入想要查询的IP地址,可以到经度、纬度,地址信息、具体的位置描述,里面嵌入了腾讯地图的接口,直接地图上显示位置。也可以自己输入腾讯key
  • IP地址定位 API 接口

    2021-02-26 10:54:02
    IP地址定位 API 接口 根据 IP 地址进行定位查询。 1. 产品功能 提供精准、高效的 IP 地址定位查询; 返回的 IP 定位地址包含详细的位置信息; 全接口支持 HTTPS(TLS v1.0 / v1.1 / v1.2 / v1.3); 全面兼容 ...
  • ip地址定位

    2016-08-22 11:02:00
    准确率99.9%的ip地址定位库,0.0x毫秒级查询,数据库文件大小只有1.5M,提供了java, php, c, python, nodejs查询绑定和Binary,B树,内存三种查询算法,妈妈再也不用担心我的ip地址定位! 1.2.1更新内容如下: 1,...
  • ip地址定位

    2014-09-17 17:48:06
    1. 能够查出OICQ上好友,陌生人的IP地址及所处地区。  2. 能进行IP与国家或地区之间的双向查询,输入IP便能查找出与之对应的国家或地区所在地。  3. 输入国家或地区即能找出属于该地区范围的IP地址。  4. 提供...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,816
精华内容 726
关键字:

查地址定位