python手机号前7位归属地爬虫的示例分析

  介绍

这篇文章主要介绍python手机号前7位归属地爬虫的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

<强>需求分析

项目上需要用到手机号前7位,判断号码是否合法,还有归属地查询。旧的数据是几年前了太久了,打算用python爬虫重新爬一份

<强>单线程版本

#,编码:utf - 8   import 请求   得到datetime  import  datetime         class  PhoneInfoSpider:   def 才能;__init__(自我,,phoneSections):   ,,,self.phoneSections =phoneSections      def 才能;phoneInfoHandler(自我,,textData):   ,,,text =, textData.splitlines(真正的)   ,,,#,打印(“text 长度:“,+,str (len(文本)))      ,,,if  len(文本),祝辞=,9:   ,,,,,number =,文本[1].split (& # 39; \ & # 39; & # 39;) [1]   ,,,,,province [2]=,文本.split (& # 39; \ & # 39; & # 39;) [1]   ,,,,,mobile_area =,文本[3].split (& # 39; \ & # 39; & # 39;) [1]   ,,,,,postcode =,文本[5].split (& # 39; \ & # 39; & # 39;) [1]   ,,,,,line =,“数字:“,+,number  +,“,省:“,+,province  +,“, mobile_area:“, +, mobile_area  +,“,邮编:“+,邮编   ,,,,,line_text =, number  +,,,,, +, province  +,,,,, +, mobile_area  +,“,“+,邮编   ,,,,,印刷(line_text)   ,,,,,#,打印(“省:“,+,省)      ,,,,,试一试:   ,,,,,,,f =,开放(& # 39;。/result.txt& # 39;,, & # 39;一个# 39;)   ,,,,,,,f.write (str (line_text), +, & # 39; \ n # 39;)   ,,,,,except  Exception  as  e:   ,,,,,,,印刷(例外,,“:“,,e)      def 才能;requestPhoneInfo(自我,,phoneNum):   ,,,试一试:   ,,,,,url =, & # 39; https://tcc.taobao.com/cc/json/mobile_tel_segment.htm?tel=& # 39;, + phoneNum   ,,,,,response =, requests.get (url)   ,,,,,self.phoneInfoHandler (response.text)   ,,,except  Exception  as  e:   ,,,,,印刷(例外,,“:“,,e)      def 才能requestAllSections(自我):   ,,,#,最后用于接上次异常退出前的号码   ,,,last =0   ,,,#,last =4   ,,,#,自动生成手机号码,后四位补0   ,,,for  head 拷贝self.phoneSections:   ,,,,,head_begin =, datetime.now ()   ,,,,,印刷(时间+ head “, begin 时间:“,+,str (head_begin))      ,,,,,#,for 小姐:拷贝范围(最后,10000):   ,,,,,for 小姐:拷贝范围(最后,10):   ,,,,,,,middle =, str (i) .zfill (4)   ,,,,,,,phoneNum =, head  +, middle  +,“0000”;   ,,,,,,,self.requestPhoneInfo (phoneNum)   ,,,,,last =0      ,,,,,head_end =, datetime.now ()   ,,,,,印刷(时间+ head “,最终获得时间:“,+,str (head_end))         if  __name__ ==, & # 39; __main__ # 39;:   时间=task_begin 才能;datetime.now ()   打印才能(“phone  check  begin 时间:“,+,str (task_begin))      #,才能电信,联通,移动,虚拟运营商   dx 才能=,(& # 39;133 & # 39;,& # 39;149 & # 39;,,& # 39;153 & # 39;,,& # 39;173 & # 39;,,& # 39;177 & # 39;,,& # 39;180 & # 39;,,& # 39;181 & # 39;,,& # 39;189 & # 39;,,& # 39;199 & # 39;】   lt 才能=,(& # 39;130 & # 39;,& # 39;131 & # 39;,,& # 39;132 & # 39;,,& # 39;145 & # 39;,,& # 39;146 & # 39;,,& # 39;155 & # 39;,,& # 39;156 & # 39;,,& # 39;166 & # 39;,,& # 39;171 & # 39;,,& # 39;175 & # 39;,,& # 39;176 & # 39;,,& # 39;185 & # 39;,,& # 39;186 & # 39;,,& # 39;166 & # 39;】   yd 才能=,[& # 39;134 & # 39;,& # 39;135 & # 39;,,& # 39;136 & # 39;,,& # 39;137 & # 39;,,& # 39;138 & # 39;,,& # 39;139 & # 39;,,& # 39;147 & # 39;,,& # 39;148 & # 39;,,& # 39;150 & # 39;,,& # 39;151 & # 39;,,& # 39;152 & # 39;,,& # 39;157 & # 39;,,& # 39;158 & # 39;,,& # 39;159 & # 39;,,& # 39;172 & # 39;,   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null

python手机号前7位归属地爬虫的示例分析