360手机号码归属地查询抓取、免费稳定高效手机号码归属地查询

写了一份根据手机号码获取城市名称的demo 之前网查了一个小公司流出来的Api 可能存在用着用着就不能停了的风险 为了稳定高效而又免费的获取手机号码归属地 又找了一个360 pc端手机号获取归属地的页面 做了一下抓取
流程上是先去读取小公司的接口 如果没有查到对应城市 程序就会自动去360抓取

这里只是获取了城市名称 如需更多信息请稍微修改一下
如果觉得抓取效率低 ,可以去聚合数据里面申请免费的每天1000条查询归属地接口
最好还是找个有钱的公司,做个小功能都抠搜的……

<?php
namespace Home\Controller;
use Think\Controller;
class MobileCityController extends Controller {
    public function index(){
        $Mobile = '1803142xxxx';
        $Url = 'http://mobsec-dianhua.baidu.com/dianhua_api/open/location?tel='.$Mobile;
        $result = json_decode($this ->getCurlRequest($Url), true);
        if(isset($result['response'][$Mobile]['detail']['area'][0]['city'])){
            $City = $result['response'][$Mobile]['detail']['area'][0]['city'];
        }else{
            $Url = 'https://www.so.com/s?q='.$Mobile.'&src=hao_tool';
            $result = $this ->postCurlRequest($Url);
            preg_match('/<p class=\"mh-detail\">([^<]*)<\/p>/is',$result, $re);
            $qian=array("&nbsp;","\t","\r","\n");
            $hou=array("","","","|");
            $str = str_replace($qian,$hou,$re[1]);
            $CityArray = explode('|', $str);
            $City = empty($CityArray[4])?$CityArray[3]:$CityArray[4];
        }
        return $City;
    }

    function getCurlRequest($Url){
        $ch = curl_init(); //初始化CURL句柄
        curl_setopt($ch, CURLOPT_URL, $Url); //设置请求的URL
        curl_setopt($ch, CURLOPT_RETURNTRANSFER,1); //设为TRUE把curl_exec()结果转化为字串,而s不是直接输出
        curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'GET'); //设置请求方式

        curl_setopt($ch,CURLOPT_HTTPHEADER,array("X-HTTP-Method-Override: GET"));//设置HTTP头信息
        $document = curl_exec($ch);//执行预定义的CURL
        curl_close($ch);
        return $document;
    }

    function postCurlRequest($Url){
        $ch = curl_init ();
        curl_setopt ( $ch, CURLOPT_URL, $Url );
        curl_setopt ( $ch, CURLOPT_POST, 1 );
        curl_setopt ( $ch, CURLOPT_HEADER, 0 );
        curl_setopt ( $ch, CURLOPT_RETURNTRANSFER, 1 );
        curl_setopt ( $ch, CURLOPT_SSL_VERIFYHOST, 0);
        curl_setopt ( $ch, CURLOPT_SSL_VERIFYPEER, 0);
        curl_setopt ( $ch, CURLOPT_RETURNTRANSFER, 1);
        curl_setopt ( $ch, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']); // 模拟用户使用的浏览器
        curl_setopt ( $ch, CURLOPT_HTTPHEADER, array (
            'Content-Type: application/json'
        ));
        $result = curl_exec ( $ch );
        curl_close ( $ch );
        return $result;
    }
}

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值