__author__='jk409' #python3.4 #使用聚合api接口 #根据手机号查询isp运营商,并更新到表里 importsys,time,urllib.request,urllib.parse sys.path.append('./') importsql importjson #------------------------------------------------------ defMysqls(): returnsql.Mysql('127.0.0.1','root','123456','msc') #------------------------------------------------------ defrequest1(phone,appkey,m="GET"): url="http://apis.juhe.cn/mobile/get" params={ "phone":phone,#需要查询的手机号码或手机号码前7位 "key":appkey,#应用APPKEY(应用详细页查询) "dtype":"json",#返回数据的格式,xml或json,默认json } params=urllib.parse.urlencode(params) ifm=="GET": f=urllib.request.urlopen("%s?%s"%(url,params)) else: f=urllib.request.urlopen(url,params) content=f.read().decode('utf-8') res=json.loads(content) ifres: error_code=res["error_code"] iferror_code==0: #成功请求 #print(res["result"]) returnres["result"]["company"] else: print("%s:%s"%(res["error_code"],res["reason"])) else: print("requestapierror") defrun(): mysql=Mysqls() sqls="selectuid,phonefrommsc_user_defwhereispisnullorderbyuidlimit10" try: res=mysql.cmd(sqls) except: pass mysql.close() res_list=[list(x)forxinres] #foriinres_list: #print(i[0]) returnres_list if__name__=="__main__": dc={} appkey='a28516a0d19a*************'#需要正确填写你的appkey phone_list=run() print('请稍后,正常查询......') foriinphone_list: isp=request1(i[1],'GET') #print(i[0],i[1],isp) dc[i[0]]={} dc[i[0]]['phone']=str(i[1]) dc[i[0]]['isp']=isp #print(dc) #isp_type:1移动,2电信,3联通 foriindc: isp_type=0 mysql=Mysqls() ifdc[i]['isp']=="中国移动":isp_type=1 ifdc[i]['isp']=='中国电信':isp_type=2 ifdc[i]['isp']=='中国联通':isp_type=3 print(dc[i]['phone'],dc[i]['isp']) print(isp_type) sqls="updatemsc_user_defsetisp='%s',isp_type='%s'wherephone='%s'" try: mysql.cmd(sqls%(dc[i]['isp'],isp_type,dc[i]['phone'])) #mysql.commit() except: print('phone',dc[i]['phone']) pass mysql.close() pass
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。