本文實例講述了Python實現的手機號歸屬地相關信息查詢功能。分享給大家供大家參考,具體如下:
根據指定的手機號碼,查詢其歸屬地等相關信息,Python實現:
手機號文件:test.txt
136932525521329662998913640810839157551066311511962273213904446048188747919531369565850013695658547159501790801557346277915217624651150184859891370652248213666519777136665151881885728752815575394501
python實現:
# coding=UTF-8# get provider information by phoneNumberfrom urllib import urlopenimport re# get html source code for urldef getPageCode(url):  file = urlopen(url)  text = file.read()  file.close()#  text = text.decode("utf-8")   # depending on coding of source code responded  return text# parse html source code to get provider informationdef parseString(src, result):  pat = []  pat.append('(?<=歸屬地:</span>).+(?=<br />)')  pat.append('(?<=卡類型:</span>).+(?=<br />)')  pat.append('(?<=運營商:</span>).+(?=<br />)')  pat.append('(?<=區號:</span>)/d+(?=<br />)')  pat.append('(?<=郵編:</span>)/d+(?=<br />)')  item = []  for i in range(len(pat)):    m = re.search(pat[i], src)    if m:      v = m.group(0)      item.append(v)  return item# get provider by phoneNumdef getProvider(phoneNum, result):  url = "http://www.sjgsd.com/n/?q=%s" %phoneNum  text = getPageCode(url)  item = parseString(text, result)  result.append((phoneNum, item))# write result to filedef writeResult(result):  f = open("result.log", "w")  for num, item in result:    f.write("%s:/t" %num)    for i in item:      f.write("%s,/t" %i)    f.write("/n")  f.close()if __name__ == "__main__":  result = []  for line in open("test.txt", "r"):    phoneNum = line.strip(" /t/r/n")    getProvider(phoneNum, result)    print("%s is finished" %phoneNum)  writeResult(result)更多關于Python相關內容可查看本站專題:《Python Socket編程技巧總結》、《Python數據結構與算法教程》、《Python函數使用技巧總結》、《Python字符串操作技巧匯總》、《Python入門與進階經典教程》及《Python文件與目錄操作技巧匯總》
希望本文所述對大家Python程序設計有所幫助。
新聞熱點
疑難解答