目录

  • 准备工作
    • 1、准备pom.xml
    • 2、准备http工具类,类名是HttpUtils(自己找位置放置,只要能用到就可以了)
  • 一、通过ip获取所在地址位置
    • 方法一、使用http://whois.pconline.com.cn
    • 方法二、使用https://ip.cn/api/index
  • 二、通过手机号获取归属地

准备工作

1、准备pom.xml

本次项目使用springboot,使用依赖如下:

<dependencies><!-- 启动依赖 --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter</artifactId></dependency><!-- springboot测试依赖 --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency><!-- html解析 --><dependency><groupId>cn.wanghaomiao</groupId><artifactId>JsoupXpath</artifactId><version>2.3.2</version></dependency><!-- fastjson --><dependency><groupId>com.alibaba</groupId><artifactId>fastjson</artifactId><version>1.2.78</version></dependency>
</dependencies>

2、准备http工具类,类名是HttpUtils(自己找位置放置,只要能用到就可以了)

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.net.URL;
import java.net.URLConnection;/*** 通用http发送方法* * @author ruoyi*/
public class HttpUtils
{private static final Logger log = LoggerFactory.getLogger(HttpUtils.class);/*** 向指定 URL 发送GET方法的请求** @param url 发送请求的 URL* @param param 请求参数,请求参数应该是 name1=value1&name2=value2 的形式。* @param contentType 编码类型* @return 所代表远程资源的响应结果*/public static String sendGet(String url, String param, String contentType){StringBuilder result = new StringBuilder();BufferedReader in = null;try{String urlNameString = url + "?" + param;URL realUrl = new URL(urlNameString);URLConnection connection = realUrl.openConnection();connection.setRequestProperty("accept", "*/*");connection.setRequestProperty("connection", "Keep-Alive");connection.setRequestProperty("user-agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;SV1)");connection.connect();in = new BufferedReader(new InputStreamReader(connection.getInputStream(), contentType));String line;while ((line = in.readLine()) != null){result.append(line);}}catch (Exception e){log.error("调用HttpsUtil.sendGet Exception, url=" + url + ",param=" + param, e);}finally{try{if (in != null){in.close();}}catch (Exception ex){log.error("调用in.close Exception, url=" + url + ",param=" + param, ex);}}return result.toString();}
}

一、通过ip获取所在地址位置

方法一、使用http://whois.pconline.com.cn

代码:

String url = "http://whois.pconline.com.cn/ipJson.jsp";
String ip = "223.72.75.159";
String rspStr = HttpUtils.sendGet(url, "ip=" + ip + "&json=true", "GBK");
JSONObject obj = JSONObject.parseObject(rspStr);
String region = obj.getString("pro");
String city = obj.getString("city");
System.out.println("所在地址位置:" + region + " " + city);

结果:

所在地址位置: 北京市 北京市

方法二、使用https://ip.cn/api/index

代码:

String url = "https://ip.cn/api/index";
String ip = "223.72.75.159";
String rspStr = HttpUtils.sendGet(url, "ip=" + ip + "&type=1", "UTF-8");
JSONObject obj = JSONObject.parseObject(rspStr);
String address = (String) obj.get("address");
System.out.println("所在地址位置:" + address);

结果:

所在地址位置:中国  北京 北京市 移动

二、通过手机号获取归属地

代码:

String url = "https://www.ip138.com/mobile.asp";
String mobile = "184XXXX8507";
Document doc = Jsoup.connect(url + "?mobile=" + mobile + "&action=mobile").timeout(1000 * 60 * 30).get();
JXDocument jxDocument = new JXDocument(doc.getAllElements());
Element element = (Element)jxDocument.selOne("//table/tbody/tr[2]/td[2]/span");
System.out.println("手机号归属地:" + element.text());

结果:

手机号归属地:河南 洛阳市

通过ip获取所在地理位置、通过手机号获取归属地相关推荐

  1. Python根据IP查找所在地理位置与运营商

    Python根据IP查找所在地理位置与运营商 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 #!/usr/bin/ ...

  2. C# 解析百度天气数据,Rss解析百度新闻以及根据IP获取所在城市

    接口地址:http://api.map.baidu.com/telematics/v3/weather?location=上海&output=json&ak=hXWAgbsCC9UTk ...

  3. PHP获取IP地址所在的地理位置

    PHP获取IP地址所在的地理位置 时间:2011-04-02 16:19来源:三知开发网 作者:许亮 点击: 787 次 http://www.sunchis.com/html/php/phpsour ...

  4. php 获取客户端位置信息_PHP中获取客户端IP地址所在的地理位置信息

    如何获得该IP所在的地理位置呢?腾讯的IP分享计划(http://fw.qq.com/ipaddress)和新浪的IP查询接口(http://int.dpool.sina.com.cn/iplooku ...

  5. 前端获取自己所在的ip_前端使用js根据ip地址获取城市地理位置

    标签: 前端使用js根据ip地址获取城市地理位置 一.使用js根据ip获取地址位置 1.在html页面,加入如下代码: var cityCode=returnCitySN.cid; document. ...

  6. 最新总结-php根据ip获取所在位置(定位)

    一.前言:很多app及网站会用到定位这个功能,除了客户端的sdk集成之外,服务端也有解决方案! 二.网上各种方法: 1.新浪接口根据ip查询所在区域信息(经过测试,不能使用) 2.淘宝接口根据ip查询 ...

  7. 获取地区html代码,根据ip地址获取所在城市信息(省市县)代码

    [实例简介] [实例截图] [核心代码] 获取ip地址所在城市 var showIP = function(ip, remote_ip_info ){ if(remote_ip_info['ret'] ...

  8. PHP获取IP地址以及IP地址所在位置

    获取IP地址: function getIP(){if (isset($_SERVER)) {if (isset($_SERVER['HTTP_X_FORWARDED_FOR'])) {$realip ...

  9. js通过IP地址获取所在城市

    话不多说,直接贴代码! 将这段代码运行一下就OK了: <html xmlns="http://www.w3.org/1999/xhtml"> <head runa ...

最新文章

  1. SpringMVC+Apache Shiro+JPA(hibernate)案例教学(二)
  2. Sqlite3 日常使用备忘录
  3. 安卓高手之路之 ClassLoader
  4. 深度学习之caffe1——软件配置与测试
  5. 【Javascript】 DOM节点
  6. Lambda表达式练习1【应用】
  7. 计算机网络(十四)-CSMA/CD协议
  8. linux java 环境配置_Linux开发环境配置——java
  9. ROS on ARM--RK3066上本地编译ROS Groovy
  10. linux gfs文件系统,Linux环境下使用GFS文件系统
  11. 創業團隊基建工具選擇
  12. kbmmw 的HTTPSmartService中的跨域访问
  13. Shader 学习笔记:水面
  14. JavaScript快速入门
  15. libpng库的移植与使用
  16. JUnit 5预期异常
  17. java 反编译软件 推荐
  18. 【TypeScript介绍】一文带你初步了解TypeScript
  19. 如何在 Spring Boot 优雅关闭加入一些自定义机制
  20. 使用Python操控手机微信app(最新教程)

热门文章

  1. maya腿的蒙皮旋转枢轴_Maya更改枢轴点,MAYA
  2. snmptester 最新版下载地址
  3. Mac 开发 打开系统偏好设置
  4. Hyper-V导出虚拟机/导入虚拟机步骤(克隆),以及克隆之后设置静态IP无效的解决办法
  5. cgcs2000大地坐标系地图_CGCS2000 国家大地坐标系及其应用.ppt
  6. 美国眼镜行业零售商Costco正式采购三井化学高折射率镜片单体MRTM
  7. Ubuntu 18.04.3 双屏显示其中一个屏幕黑屏无法使用的问题 显卡驱动安装问题
  8. 通过web修改AD账号密码(无需第三方工具)
  9. 台湾大学林轩田教授机器学习基石课程理解及python实现----PLA
  10. OOALV 有PAI事件时刷新