重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
Python实现批量获取并保存手机号归属地和运营商?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。
大田ssl适用于网站、小程序/APP、API接口等需要进行数据传输应用场景,ssl证书未来市场广阔!成为创新互联公司的ssl证书销售渠道,可以享受市场价格4-6折优惠!如果有意向欢迎电话联系或者加微信:18980820575(备注:SSL证书合作)期待与您的合作!从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)