[python]爬取手机号码前缀和地区信息

简介: [python]爬取手机号码前缀和地区信息

概述

使用python爬取手机号码前缀7位、区号和地区。

小网站不容易,对爬虫也挺友好,就不放链接了。

代码

import requests
from lxml import etree
from fake_useragent import UserAgent
import time
def parse_page(url,header,cookie):
    """ 解析url,并写到文件中 """
    resp = requests.get(url,headers=header,cookies=cookie)
    html = etree.HTML(resp.text)
    filename = "phonenum.txt"
    # 爬取手机前缀
    phone_number_1 = html.xpath("//tr[@class='even']/td[1]/a/text()")
    # 爬取所在地区
    phone_number_1_city = html.xpath("//tr[@class='even']/td[2]/text()")
    # 爬取地区区号
    phone_number_1_citynum = html.xpath("//tr[@class='even']/td[4]/text()")
    phone_number_2 = html.xpath("//tr[@class='odd']/td[1]/a/text()")
    phone_number_2_city = html.xpath("//tr[@class='odd']/td[2]/text()")
    phone_number_2_citynum = html.xpath("//tr[@class='odd']/td[4]/text()")
    # 使用zip()组合爬取结果,并追加到文件中
    for i,j,k in zip(phone_number_1,phone_number_1_citynum,phone_number_1_city):
        with open(filename,"a",encoding="utf-8") as f_obj:
            f_obj.write(f"{i},{j},{k}\n")
    for x,y,z in zip(phone_number_2,phone_number_2_citynum,phone_number_2_city):
        with open(filename,"a",encoding="utf-8") as f_obj:
            f_obj.write(f"{x},{y},{z}\n")
        
def cookie_to_dict(cookie_src):
    cookie_dict = {}
    for i in cookie_src.split('; '):
        cookie_dict[i.split('=')[0]] = i.split('=')[1]
    return cookie_dict
def main():
    """ 执行主程序 """
    ua = UserAgent()
    # 地址很简单,直接range
    for page in range(1,1234):
        # 网站地址
        phone_url = "...........%d"%page
        phone_headers = {"User-Agent": ua.random}
        # 填写自己的cookie
        cookie_src = ""
        cookie = cookie_to_dict(cookie_src)
        parse_page(phone_url,phone_headers,cookie)
        print(f"page: {page}")
        # 暂停2秒,防止目标网站宕机
        time.sleep(2)
if __name__ == '__main__':
    main()

结果

爬取了463600条数据,部分数据如下:

...
...
1999451,0776,广西 百色
1999449,0772,广西 来宾
1999447,0774,广西 梧州
1999445,0778,广西 河池
1999443,0776,广西 百色
1999441,0771,广西 南宁
1999438,0931,甘肃 兰州
1999436,0931,甘肃 兰州
1999434,0943,甘肃 白银
1999432,0943,甘肃 白银
1999430,0943,甘肃 白银
1999418,0931,甘肃 兰州
1999416,0931,甘肃 兰州
1999414,0941,甘肃 甘南
1999412,0941,甘肃 甘南
...
...
相关文章
|
2月前
|
API 数据安全/隐私保护 开发者
企业微信自动加好友软件,导入手机号批量添加微信好友,python版本源码分享
代码展示了企业微信官方API的合规使用方式,包括获取access_token、查询部门列表和创建用户等功能
|
2月前
|
机器人 测试技术 API
自动加好友软件手机免费版,无限制qq自动加人软件,python脚本插件分享
这个示例仅展示了基础的网页自动化测试原理,实际平台都有完善的反自动化机制。建议学习正规
|
3月前
|
数据采集 存储 数据可视化
Python爬取招标信息并生成可视化分析报告
Python爬取招标信息并生成可视化分析报告
|
7月前
|
存储 算法 API
【01】整体试验思路,如何在有UID的情况下获得用户手机号信息,python开发之理论研究试验,如何通过抖音视频下方的用户的UID获得抖音用户的手机号-本系列文章仅供学习研究-禁止用于任何商业用途-仅供学习交流-优雅草卓伊凡
【01】整体试验思路,如何在有UID的情况下获得用户手机号信息,python开发之理论研究试验,如何通过抖音视频下方的用户的UID获得抖音用户的手机号-本系列文章仅供学习研究-禁止用于任何商业用途-仅供学习交流-优雅草卓伊凡
917 82
|
5月前
|
存储 监控 API
【Azure App Service】分享使用Python Code获取App Service的服务器日志记录管理配置信息
本文介绍了如何通过Python代码获取App Service中“Web服务器日志记录”的配置状态。借助`azure-mgmt-web` SDK,可通过初始化`WebSiteManagementClient`对象、调用`get_configuration`方法来查看`http_logging_enabled`的值,从而判断日志记录是否启用及存储方式(关闭、存储或文件系统)。示例代码详细展示了实现步骤,并附有执行结果与官方文档参考链接,帮助开发者快速定位和解决问题。
149 23
|
11月前
|
Python
Python编程获取当前日期的所属周日期信息
Python编程获取当前日期的所属周日期信息
165 1
|
7月前
|
存储 API 数据安全/隐私保护
【02】整体试验思路,在这之前我们发现sec_uid,sec_uid是什么和uid的关系又是什么?相互如何转换?python开发之理论研究试验,如何通过抖音视频下方的用户的UID获得抖音用户的手机号-本系列文章仅供学习研究-禁止用于任何商业用途-仅供学习交流-优雅草卓伊凡
【02】整体试验思路,在这之前我们发现sec_uid,sec_uid是什么和uid的关系又是什么?相互如何转换?python开发之理论研究试验,如何通过抖音视频下方的用户的UID获得抖音用户的手机号-本系列文章仅供学习研究-禁止用于任何商业用途-仅供学习交流-优雅草卓伊凡
455 6
|
9月前
|
JavaScript API C#
【Azure Developer】Python代码调用Graph API将外部用户添加到组,结果无效,也无错误信息
根据Graph API文档,在单个请求中将多个成员添加到组时,Python代码示例中的`members@odata.bind`被错误写为`members@odata_bind`,导致用户未成功添加。
105 10
|
10月前
|
缓存 监控 Linux
Python 实时获取Linux服务器信息
Python 实时获取Linux服务器信息
|
9月前
|
数据采集 存储 XML
python实战——使用代理IP批量获取手机类电商数据
本文介绍了如何使用代理IP批量获取华为荣耀Magic7 Pro手机在电商网站的商品数据,包括名称、价格、销量和用户评价等。通过Python实现自动化采集,并存储到本地文件中。使用青果网络的代理IP服务,可以提高数据采集的安全性和效率,确保数据的多样性和准确性。文中详细描述了准备工作、API鉴权、代理授权及获取接口的过程,并提供了代码示例,帮助读者快速上手。手机数据来源为京东(item.jd.com),代理IP资源来自青果网络(qg.net)。

热门文章

最新文章

推荐镜像

更多