[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,甘肃 甘南
...
...
[python]爬取手机号码前缀和地区信息的更多相关文章
- 使用python爬取MedSci上的期刊信息
使用python爬取medsci上的期刊信息,通过设定条件,然后获取相应的期刊的的影响因子排名,期刊名称,英文全称和影响因子.主要过程如下: 首先,通过分析网站http://www.medsci.cn ...
- python爬取当当网的书籍信息并保存到csv文件
python爬取当当网的书籍信息并保存到csv文件 依赖的库: requests #用来获取页面内容 BeautifulSoup #opython3不能安装BeautifulSoup,但可以安装Bea ...
- python爬取“美团美食”汕头地区的所有店铺信息
一.目的 获取美团美食每个店铺所有的评论信息,并保存到数据库和本地 二.实现步骤 获取所有店铺的poiId 首先观察详情页的url,后面是跟着一串数字的,而这一串数字代表着每个店铺特有的id号,我们称 ...
- 零基础爬虫----python爬取豆瓣电影top250的信息(转)
今天利用xpath写了一个小爬虫,比较适合一些爬虫新手来学习.话不多说,开始今天的正题,我会利用一个案例来介绍下xpath如何对网页进行解析的,以及如何对信息进行提取的. python环境:pytho ...
- python爬取豌豆荚中的详细信息并存储到SQL Server中
买了本书<精通Python网络爬虫>,看完了第6章,我感觉我好像可以干点什么:学的不多,其中的笔记我放到了GitHub上:https://github.com/NSGUF/PythonLe ...
- 用 Python 爬取网易严选妹子内衣信息,探究妹纸们的偏好
网易商品评论爬取 分析网页 评论分析 进入到网易精选官网,搜索“文胸”后,先随便点进一个商品. 在商品页面,打开 Chrome 的控制台,切换至 Network 页,再把商品页Python入门到精通学 ...
- python爬取智联招聘职位信息(多进程)
测试了下,采用单进程爬取5000条数据大概需要22分钟,速度太慢了点.我们把脚本改进下,采用多进程. 首先获取所有要爬取的URL,在这里不建议使用集合,字典或列表的数据类型来保存这些URL,因为数据量 ...
- python爬取所有微信好友的信息
''' 爬取所有T信好友的信息 ''' import itchat from pandas import DataFrame itchat.login() friends=itchat.get_fri ...
- python爬取智联招聘职位信息(单进程)
我们先通过百度搜索智联招聘,进入智联招聘官网,一看,傻眼了,需要登录才能查看招聘信息 没办法,用账号登录进去,登录后的网页如下: 输入职位名称点击搜索,显示如下网页: 把这个URL:https://s ...
- python 爬取B站视频弹幕信息
获取B站视频弹幕,相对来说很简单,需要用到的知识点有requests.re两个库.requests用来获得网页信息,re正则匹配获取你需要的信息,当然还有其他的方法,例如Xpath.进入你所观看的视频 ...
随机推荐
- vue工程内下载路由
一.路由Router Vue Router 是Vue.js官方的路由管理器.它和Vue.js的核心深度集成,加速构建单页面应用.包含功能有: 1 嵌套的路由/视图表 2 模块化的.基于组件的路由配置 ...
- ent M2M模型在pxc集群中的一个大坑
ent M2M模型在pxc集群中的一个大坑 事故简要分析 PXC集群3个节点,在插入数据时,如果使用数据库自己生成的主键,一般顺序为1,4,7,10- 这里就是坑的源头,在ent底层代码中,在做M2M ...
- drf——反序列化校验源码(了解)、断言、drf之请求和响应、视图之两个视图基类
1.模块与包 # 模块与包 模块:一个py文件 被别的py文件导入使用,这个py文件称之为模块,运行的这个py文件称之为脚本文件 包:一个文件夹下有__init__.py # 模块与包的导入问题 '' ...
- 【踩坑记录】字节流数据按照string的方式读取然后按照string的方案存储,编码导致二进制数据发生变化,原理记录
目录 问题缘由 背后原理 C#代码示例 总结 问题缘由 由于公司需求,需要读取游戏Redis数据做内外网数据迁移,没有与游戏组过多的沟通. 使用的数据类型是Hash, key是string,va ...
- 你还在用Object.equals()方法吗?
前言 当<阿里巴巴Java开发手册>发布后,我也是仔细进行了阅读,想从中找出一些"标准",让自己的代码质量提高.手册中对 Object 的 equals 方法的使用进行 ...
- python selenium自动化火狐浏览器开代理IP服务器
前言 Selenium是一款用于自动化测试Web应用程序的工具,它可以模拟用户在浏览器中的各种行为.而代理IP服务器则是一种可以帮助用户隐藏自己真实IP地址的服务器,使得用户可以在互联网上更加匿名地进 ...
- 一文搞懂V8引擎的垃圾回收机制
前言 我们平时在写代码的过程中,好像很少需要自己手动进行垃圾回收,那么V8是如何来减少内存占用,从而避免内存溢出而导致程序崩溃的情况的.为了更高效地回收垃圾,V8引入了两个垃圾回收器,它们分别针对不同 ...
- 【技术积累】Python中的NumPy库【二】
NumPy库的主要类有哪些? NumPy库的主要类包括: ndarray:N维数组对象,是NumPy最重要的类之一.它是Python中数组的基本数据结构,可以进行高效的数学计算和数据处理操作. ufu ...
- 解密Prompt系列9. 模型复杂推理-思维链COT基础和进阶玩法
终于写了一篇和系列标题沾边的博客,这一篇真的是解密prompt!我们会讨论下思维链(chain-of-Thought)提示词究竟要如何写,如何写的更高级.COT其实是Self-ASK,ReACT等利用 ...
- 在线免费chatgpt网页版-支持gpt4
为了吸引更多的用户体验最先进的自然语言处理技术,我们推出了在线免费ChatGPT.这是一个基于OpenAI训练的大型语言模型,它可以提供智能响应.自然对话和语音识别等功能.不仅如此,我们还提供了完全免 ...