Python抓取手机号归属地信息示例代码
作者:标点符
之前看到一篇文章有提供手机号归属地数据库的下载,由于手机号号段一直在增加,所以提供的数据基本上随时会过期,更理想的方法是从网上定期抓取其他站点维护的经纬度信息。下面这篇文章就给大家介绍了如何利用Python抓取手机归属地信息,有需要的朋友们可以参考借鉴。
前言
本文给大家介绍的是利用Python抓取手机归属地信息,文中给出了详细的示例代码,相信对大家的理解和学习很有帮助,以下为Python代码,较为简单,供参考。
示例代码
# -*- coding:utf-8 -*- import requests,re o = open('data.txt','a') e = open('error.txt','a') baseUrl = 'http://www.iluohe.com/' r = requests.get('http://www.iluohe.com/all.shtml',) links = re.findall('<a href="(city/.*?/.*?)" target',r.content.decode("gbk").encode("utf-8")) for link in links: link = baseUrl+link cityData = requests.get(link) if cityData.status_code >= 300 : e.writelines(link+"\n") else: cityData = cityData.content.decode("gbk").encode("utf-8") provinceTemp = re.findall('<div class="NameSzu"><a href=".*?">(.*?)</a></div>',cityData) if provinceTemp: province = provinceTemp[0] city = re.findall('<meta name="description" content="(.*?)共有',cityData)[0] tempData = re.findall('<div class="ab_menu.*?</span>(.*?) \(.*?</div>.*?<ul>(.*?)</ul>',cityData) for temp in tempData: carrier = temp[0] numbers = re.findall('">(.*?)</a></li>',temp[1]) for number in numbers: text = number + "," + carrier + "," + city + "," + province o.writelines(text) o.writelines('\n') else: e.writelines(link+"\n") o.close() print "over!"
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。