Python3爬虫爬取百姓网列表并保存为json功能示例【基于request、lxml和json模块】


Posted in Python onDecember 05, 2018

本文实例讲述了Python3爬虫爬取百姓网列表并保存为json功能。分享给大家供大家参考,具体如下:

python3爬虫之爬取百姓网列表并保存为json文件。这几天一直在学习使用python3爬取数据,今天记录一下,代码很简单很容易上手。

首先需要安装python3。如果还没有安装,可参考本站python3安装与配置相关文章。

首先需要安装requestslxmljson三个模块

需要手动创建d.json文件

代码

import requests
from lxml import etree
import json
#构造头文件,模拟浏览器访问
url="http://xian.baixing.com/meirongfuwu/"
headers = {'User-Agent':'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.77 Safari/537.36','referer':url}
response=requests.get(url,headers=headers)
body=response.text #获取网页内容
html=etree.HTML(body,etree.HTMLParser())
gethtml=html.xpath('//div[contains(@class,"media-body-title")]')
# 存储为数组list
jsondata = []
for item in gethtml:
  jsonone={}
  jsonone['title']=item.xpath('.//a[contains(@class,"ad-title")]/text()')[0]
  jsonone['url']=item.xpath('.//a[contains(@class,"ad-title")]/attribute::href')[0]
  jsonone['phone']=item.xpath('.//button[contains(@class,"contact-button")]/attribute::data-contact')[0]
  jsondata.append(jsonone)
# 保存为json
with open("./d.json",'w',encoding='utf-8') as json_file:
  json.dump(jsondata,json_file,ensure_ascii=False)

结果

Python3爬虫爬取百姓网列表并保存为json功能示例【基于request、lxml和json模块】

Python 相关文章推荐
python判断windows隐藏文件的方法
Mar 21 Python
详解Django框架中用context来解析模板的方法
Jul 20 Python
Python编码爬坑指南(必看)
Jun 10 Python
Python解惑之整数比较详解
Apr 24 Python
你眼中的Python大牛 应该都有这份书单
Oct 31 Python
快速了解Python相对导入
Jan 12 Python
Python异常的检测和处理方法
Oct 26 Python
Python函数基本使用原理详解
Mar 19 Python
如何验证python安装成功
Jul 06 Python
Python爬取12306车次信息代码详解
Aug 12 Python
python request 模块详细介绍
Nov 10 Python
Python中使用ipython的详细教程
Jun 22 Python
python3 实现对图片进行局部切割的方法
Dec 05 #Python
python中强大的format函数实例详解
Dec 05 #Python
python3+opencv3识别图片中的物体并截取的方法
Dec 05 #Python
解决Python3.5+OpenCV3.2读取图像的问题
Dec 05 #Python
Python3实现爬虫爬取赶集网列表功能【基于request和BeautifulSoup模块】
Dec 05 #Python
对python opencv 添加文字 cv2.putText 的各参数介绍
Dec 05 #Python
Python寻找两个有序数组的中位数实例详解
Dec 05 #Python
You might like
PHP CKEditor 上传图片实现代码
2009/11/06 PHP
php 中英文语言转换类代码
2011/08/11 PHP
php三维数组去重(示例代码)
2013/11/26 PHP
微信access_token的获取开发示例
2015/04/16 PHP
解决laravel 5.1报错:No supported encrypter found的办法
2017/06/07 PHP
JS中for循序中延迟加载动态效果的具体实现
2013/08/18 Javascript
Thinkphp模板没有解析直接原样输出的解决方法
2014/10/31 Javascript
PHP中CURL的几个经典应用实例
2015/01/23 Javascript
JavaScript淡入淡出渐变简单实例
2015/08/06 Javascript
使用PBFunc在Powerbuilder中支付宝当面付款功能
2016/10/01 Javascript
javascript匀速动画和缓冲动画详解
2016/10/20 Javascript
jquery对所有input type=text的控件赋值实现方法
2016/12/02 Javascript
javascript中对象的定义、使用以及对象和原型链操作小结
2016/12/14 Javascript
JSON 数据详解及实例代码分析
2017/01/20 Javascript
利用express启动一个server服务的方法
2017/09/17 Javascript
vue.js 微信支付前端代码分享
2018/02/10 Javascript
vue v-model实现自定义样式多选与单选功能
2018/07/05 Javascript
JQuery Ajax动态加载Table数据的实例讲解
2018/08/09 jQuery
使用vue2实现带地区编号和名称的省市县三级联动效果
2018/11/05 Javascript
[37:45]2014 DOTA2国际邀请赛中国区预选赛5.21 DT VS Orenda
2014/05/22 DOTA
[01:30]2016国际邀请赛中国区预选赛神秘商店火爆开启
2016/06/26 DOTA
python中使用xlrd、xlwt操作excel表格详解
2015/01/29 Python
python查看FTP是否能连接成功的方法
2015/07/30 Python
python从入门到精通(DAY 1)
2015/12/20 Python
numpy.random.seed()的使用实例解析
2018/02/03 Python
python如何为创建大量实例节省内存
2018/03/20 Python
使用python对文件中的数值进行累加的实例
2018/11/28 Python
Python 3.8 新功能来一波(大部分人都不知道)
2020/03/11 Python
python实时监控logstash日志代码
2020/04/27 Python
python随机模块random的22种函数(小结)
2020/05/15 Python
python向xls写入数据(包括合并,边框,对齐,列宽)
2021/02/02 Python
matplotlib交互式数据光标mpldatacursor的实现
2021/02/03 Python
用CSS3实现背景渐变的方法
2015/07/14 HTML / CSS
德国帽子专家:Hutshopping
2019/11/03 全球购物
完整版商业计划书
2014/09/15 职场文书
镇副书记专题民主生活会对照检查材料思想汇报
2014/10/02 职场文书