Java实现查询手机号码被标记功能

 使用第三方的接口基本都收费,百度和360搜索可以直接输入号码查询标识状态,这里我使用Jsoup爬虫快速实现号码标识查询功能。

 1 public static JSONObject so(String mobile){
 2             JSONObject jsonObject=new JSONObject();
 3             jsonObject.put("count",0);//多少人标识
 4             try {
 5                 Connection con = Jsoup.connect("https://www.so.com/s?q="+mobile);
 6                 con.header("Host", "https://www.so.com");
 7                 con.header("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8"); 
 8                 con.header("Content-Type", "application/x-www-form-urlencoded");
 9                 con.header("User-Agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.139 Safari/537.36"); 
10                 Document doc=con.get();
11                 String count=doc.select(".mohe-tips b").text();
12                 if(StringUtils.isNotBlank(count)){
13                     jsonObject.put("count",count);//多少人标识
14                     jsonObject.put("address",doc.select(".mohe-mobileInfoContent .mh-detail span").last().text());//地址
15                     jsonObject.put("type",doc.select(".mohe-tips .mohe-ph-mark").text());//标识类别
16                     jsonObject.put("source",doc.select(".mohe-tips .mohe-sjws").text());//来源
17                     jsonObject.put("date",EasyDate.getCurrentDateString());
18                 }
19             } catch (Exception e) {
20                 e.printStackTrace();
21                 return jsonObject;
22             }
23             return jsonObject;
24     }
25     public static JSONObject baidu(String mobile){
26             JSONObject jsonObject=new JSONObject();
27             jsonObject.put("count",0);//多少人标识
28             try {            
           Connection con = Jsoup.connect("https://www.baidu.com/s?wd="+mobile); 31 con.header("Host", "www.baidu.com"); 32 con.header("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8"); 33 con.header("Content-Type", "application/x-www-form-urlencoded"); 34 con.header("User-Agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.139 Safari/537.36"); 35 Document doc=con.get();
         String source=doc.select(".op_fraudphone_word a").text();
        if(StringUtils.isNotBlank(source)){ 41 jsonObject.put("source",doc.select(".op_fraudphone_word a").text());//来源 42 String desc=doc.select(".op_fraudphone_word").text(); 43 if(StringUtils.isNotBlank(desc)){ 44 String count=desc.substring(desc.indexOf("被")+1,desc.indexOf("个")); 45 jsonObject.put("count",count);//多少人标识 46 } 47 jsonObject.put("address",doc.select(".op_fraudphone_addr").text());//地址 48 jsonObject.put("type",doc.select(".op_fraudphone_label").text());//标识类别 49 jsonObject.put("date",EasyDate.getCurrentDateString()); 50 } 51 } catch (Exception e) { 52 e.printStackTrace(); 53 return jsonObject; 54 }     
          return jsonObject; 57 } 58 public static void main(String[] args) throws IOException { 59 // String mobile="073184145266"; 60 String mobile="037110016"; 61 System.out.println(baidu(mobile)); 62 System.out.println(so(mobile)); 63 64 }

 

posted @ 2019-10-29 17:55  chenxiaofeng  阅读(1065)  评论(0编辑  收藏  举报