Python批量查询手机号归属地与运营商并写入Excel
本文介绍如何使用Python脚本从Excel文件中读取手机号码,通过360手机查询接口批量获取每个号码的归属地和运营商信息,并将结果追加写入新的Excel文件中。
Python批量查询手机号归属地与运营商实现
该示例旨在从Excel文件中读取一组手机号码,批量查询每个号码对应的运营商及归属地信息,并将查询结果追加至原记录的末尾。
import requests
import json
import xlrd
from xlutils.copy import copy
host = 'https://cx.shouji.360.cn/phonearea.php'
# excel文件路径
file_path = "F:\\temp.xlsx"
# 新文件路径
new_file_path = "F:\\temp(含归属地+运营商).xlsx"
def query(phone_no):
resp = requests.get(host, {'number': phone_no}).content.decode('utf-8')
js = json.loads(resp)
print(js)
return js['data']
def load_excel(path):
# 打开文件
data = xlrd.open_workbook(path)
# 打开第一个sheet
table = data.sheet_by_index(0)
new_workbook = copy(data)
new_worksheet = new_workbook.get_sheet(0)
rows = table.nrows
cols = table.ncols
print("总行数:" + str(rows))
print("总列数:" + str(cols))
for row in range(rows):
print("row --> " + str(row + 1))
for col in range(cols):
cel_val = table.cell(row, col).value
print(cel_val)
new_worksheet.write(row, col, cel_val)
if row > 0:
# 手机号,在第一行之后的第二列
phone_no = table.cell(row, 1).value
js = query(phone_no)
new_worksheet.write(row, cols + 1, js['province'] + js['city'])
new_worksheet.write(row, cols + 2, js['sp'])
else:
new_worksheet.write(row, cols + 1, "归属地")
new_worksheet.write(row, cols + 2, "运营商")
print('\r\n')
new_workbook.save(new_file_path)
if __name__ == '__main__':
load_excel(file_path)
以上即为利用Python批量获取并保存手机号归属地与运营商信息的完整示例,如需了解更多Python相关技巧,请参阅本站其他文章。
免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。









