Python批量获取并保存手机号归属地和运营商的示例


Posted in Python onOctober 09, 2020

从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批量获取并保存手机号的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
Python使用Scrapy爬取妹子图
May 28 Python
Python实现对字符串的加密解密方法示例
Apr 29 Python
带你了解python装饰器
Jun 15 Python
Python 3.6 读取并操作文件内容的实例
Apr 23 Python
Django中使用Whoosh进行全文检索的方法
Mar 31 Python
python使用time、datetime返回工作日列表实例代码
May 09 Python
Django中自定义查询对象的具体使用
Oct 13 Python
python 实现读取csv数据,分类求和 再写进 csv
May 18 Python
如何使用Pytorch搭建模型
Oct 26 Python
用60行代码实现Python自动抢微信红包
Feb 04 Python
python可视化大屏库big_screen示例详解
Nov 23 Python
利用Python脚本写端口扫描器socket,python-nmap
Jul 23 Python
Python判断变量是否是None写法代码实例
Oct 09 #Python
Python尾递归优化实现代码及原理详解
Oct 09 #Python
Python hashlib模块的使用示例
Oct 09 #Python
浅析Python requests 模块
Oct 09 #Python
Python特殊属性property原理及使用方法解析
Oct 09 #Python
python GUI计算器的实现
Oct 09 #Python
Numpy实现卷积神经网络(CNN)的示例
Oct 09 #Python
You might like
站长助手-网站web在线管理程序 v1.0 下载
2007/05/12 PHP
PHP网页游戏学习之Xnova(ogame)源码解读(七)
2014/06/23 PHP
php中的观察者模式简单实例
2015/01/20 PHP
PHP中字符与字节的区别及字符串与字节转换示例
2016/10/15 PHP
PHP获取二叉树镜像的方法
2018/01/17 PHP
基于JQuery的一句代码实现表格的简单筛选
2010/07/26 Javascript
JavaScript调用堆栈及setTimeout使用方法深入剖析
2013/02/16 Javascript
javascript Event对象详解及使用示例
2013/11/22 Javascript
2014年50个程序员最适用的免费JQuery插件
2014/12/15 Javascript
jquery实现动态操作select选中
2015/02/11 Javascript
使用NodeJs 开发微信公众号(三)微信事件交互实例
2016/03/02 NodeJs
第三篇Bootstrap网格基础
2016/06/21 Javascript
JavaScript基于DOM操作实现简单的数学运算功能示例
2017/01/16 Javascript
详解vue-cli + webpack 多页面实例配置优化方法
2017/07/13 Javascript
JavaScript中arguments和this对象用法分析
2018/08/08 Javascript
新手简单了解vue
2019/05/29 Javascript
基于VUE的v-charts的曲线显示功能
2019/10/01 Javascript
JavaScript Tab菜单实现过程解析
2020/05/13 Javascript
解决Echarts 显示隐藏后宽度高度变小的问题
2020/07/19 Javascript
JavaScript事件循环及宏任务微任务原理解析
2020/09/02 Javascript
js对象属性名驼峰式转下划线的实例代码
2020/09/17 Javascript
Python Nose框架编写测试用例方法
2017/10/26 Python
Anaconda入门使用总结
2018/04/05 Python
python二维列表一维列表的互相转换实例
2018/07/02 Python
Python3的高阶函数map,reduce,filter的示例详解
2019/07/23 Python
python实现登录密码重置简易操作代码
2019/08/14 Python
Python中*args和**kwargs的区别详解
2019/09/17 Python
解决TensorFlow调用Keras库函数存在的问题
2020/07/06 Python
Django视图类型总结
2021/02/17 Python
CSS3的新特性介绍
2008/10/31 HTML / CSS
使用canvas对多图片拼合并导出图片的方法
2018/08/28 HTML / CSS
教师评优的个人自我评价分享
2013/09/19 职场文书
2015年征兵工作总结
2015/07/23 职场文书
三好学生评选事迹材料(2016精选版)
2016/02/25 职场文书
导游词之苏州盘门景区
2019/11/12 职场文书
SQL实现LeetCode(180.连续的数字)
2021/08/04 MySQL