日常工作,需要进行批量手机号归属地的判断,python的phone 包即可快速查询,缺点是存在部分无法确定的号码。
import pandas as pd
import numpy as np
from phone import Phone
from datetime import datetime
from sqlalchemy import create_engine
date = datetime.now()
date_no = datetime.now().strftime('%Y%m%d')
#查不到的无返回值,不是空[],会报错,用try
def Phone_Trans_City(phoneNum):
contest = Phone().find(phoneNum)
try:
print(phoneNum,contest['province'],contest['city'])
return [contest['province'],contest['city']]
except:
return [np.nan,np.nan]
if __name__ == "__main__":
phoneNum = '17832082717'
contest = Phone().find(phoneNum)
input_data = pd.read_excel(r'D:\work\phone.xlsx')
#['手机号码', '访问IP']
input_data['get_data'] = input_data['手机号码'].apply(lambda x:Phone_Trans_City(x))
input_data['province'] = input_data['get_data'].apply(lambda x:x[0])
input_data['city'] = input_data['get_data'].apply(lambda x:x[1])
input_data = pd.read_excel(r'D:\work\phone_trans_city.xlsx')
input_data.dtypes