手机号怎么速查归属地查询姓名(Excel批量获取手机号码归属地)
我们都知道手机号中隐藏着一些信息,比如运营商、号码归属地等,有时候我们需要获取手机号属于什么地区,以便于做分类。
很多人一般会借助工具,然后再把结果复制或者导入Excel中,效率很低。其实完全不用借助工具,Excel自己就有获取的函数。所以这篇文章就来分享2种非常高效的方式,几秒钟就可以解决。
2个web前端小知识
因为获取数据需要通过网络访问服务器,所以简单的web知识还是最好了解一点,一看就会。
1、开发者工具键【F12】
在网页端按下【F12】发现我们看到了web前端的源代码,我们需要获取的数据就包含在这些信息中。
步骤:网页中输入手机号,点击查询,【F12】调出开发工具界面,【Ctrl + F】搜索“号码归属地”,可以看到查询到的结果,以及下面的手机卡类型。
查询步骤
2、UTF-8编码
要保证访问的网页是指定了UTF-8编码的,否则获取的网页信息如果含有中文放在Excel中就会出现乱码,自然也就得不到最后的结果了。
查看是否是UTF-8编码方法:在【F12】调出的开发者工具界面搜索“charset”。
查看charset
如果出现下面这种charset="gb2312",含有中文就会出现乱码。
数据含有中文放Excel会乱码
为获取正确的信息,web前端的知识只需要知道这2点就够用了。
第一种方法
https://shouji.51240.com/
从上面这个网址获取查询信息,但是如果想获取某个手机号的查询信息,这个网址还并不完整。
步骤一:拼接完整网址
单元格输入:
="https://shouji.51240.com/"&A3&"__shouji/"
把A3单元格中的手机号也拼接上,网址就变成了
https://shouji.51240.com/18814799140__shouji/
拼接完整网址
步骤二:获取网址信息
=WEBSERVICE(网址)
通过使用Excel中的WEBSERVICE函数,发送服务请求服务器返回数据。
获取数据
注意:【=WEBSERVICE(网址)】这个获取数据的函数最好一行只出现一次,因为每使用一次就会发送一次网络请求,网络不好会出现严重的卡顿,甚至获取不到数据。
所以最好WEBSERVICE函数自己写一列,也可以把“网址”列和“获取网址信息”列合并为:
=WEBSERVICE("https://shouji.51240.com/"&A3&"__shouji/")
步骤三:通过查询、截取等函数获得归属地
=MID(C3,FIND("title",C3)+18,FIND("-",MID(C3,FIND("title",C3)+18,11))-2)
通过FIND函数查出title的位置,然后再通过MID函数截取。
获得结果
但是这种方法有一个不好的地方,如果刚开始因为网络慢没有获取到数据,那么后面也不会自动刷新结果,只能通过手动一行一行刷新。
第二种方法
http://shouji.xpcha.com/
第2种方法用的是另外一个网址,步骤和方法第一种大同小异。
步骤一:拼接字符串
="http://shouji.xpcha.com/"&A3&".html"
步骤二:获取网址信息
=WEBSERVICE(网址)
步骤三:通过查询、截取等函数获得归属地
=RIGHT(MID(C3,FIND("手机卡类型:",C3)+13,4),2)&" "&MID(C3,FIND("号码归属地:",C3)+13,FIND("<",MID(C3,FIND("号码归属地:",C3)+13,10))-1)
获取结果
这个网址的好处就是,如果刚开始因为网络慢未获取到数据,但是获取到数据后会自动更新。所以相比于两者,第二种方法更好一些。
总结
上面两个网址是我测试了很多次之后筛选出来的,最后做一个总结:
1、了解2点web知识,知道数据的来源。
2、第一种方法存在小小的缺陷:获取不到的数据,需要手动刷新。
3、第二种方法短时间获取不到数据,后面获取到时会自动刷新。