当前位置: 首页 > news >正文

上海手机网站案例深圳网站程序开发

上海手机网站案例,深圳网站程序开发,移动端网站一般宽做多大,wordpress微信支付插件下载数据提取之JSON与JsonPATH JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,它使得人们很容易的进行阅读和编写。同时也方便了机器进行解析和生成。适用于进行数据交互的场景,比如网站前台与后台之间的数据交互。 JSON和XML的比较可谓不…

数据提取之JSON与JsonPATH

JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,它使得人们很容易的进行阅读和编写。同时也方便了机器进行解析和生成。适用于进行数据交互的场景,比如网站前台与后台之间的数据交互。

JSON和XML的比较可谓不相上下。

Python 2.7中自带了JSON模块,直接import json就可以使用了。

官方文档:http://docs.python.org/library/json.html

Json在线解析网站:http://www.json.cn/#

JSON

json简单说就是javascript中的对象和数组,所以这两种结构就是对象和数组两种结构,通过这两种结构可以表示各种复杂的结构

  1. 对象:对象在js中表示为{ }括起来的内容,数据结构为 { key:value, key:value, ... }的键值对的结构,在面向对象的语言中,key为对象的属性,value为对应的属性值,所以很容易理解,取值方法为 对象.key 获取属性值,这个属性值的类型可以是数字、字符串、数组、对象这几种。
  2. 数组:数组在js中是中括号[ ]括起来的内容,数据结构为 ["Python", "javascript", "C++", ...],取值方式和所有语言中一样,使用索引获取,字段值的类型可以是 数字、字符串、数组、对象几种。

import json

json模块提供了四个功能:dumpsdumploadsload,用于字符串 和 python数据类型间进行转换。

1. json.loads()

作用:把json格式的字符串转为Python数据类型

# json_loads.pyimport jsonstrList = '[1, 2, 3, 4]'strDict = '{"city": "北京", "name": "大猫"}'json.loads(strList)
# [1, 2, 3, 4]json.loads(strDict) # json数据自动按Unicode存储
# {u'city': u'\u5317\u4eac', u'name': u'\u5927\u732b'}

2. json.dumps()

把 python 类型 转为 json 类型

import json# json.dumps()之前
item = {'name':'QQ','app_id':1}
print('before dumps',type(item)) # dict
# json.dumps之后
item = json.dumps(item)
print('after dumps',type(item)) # str

3. json.dump()

把python数据类型转为 json格式的字符串

注意:一般让你把抓取的数据保存为json文件时使用

# 示例1
import jsonitem = {'name':'QQ','app_id':1}
with open('小米.json','a') as f:json.dump(item,f,ensure_ascii=False)# 示例2
import jsonitem_list = []
for i in range(3):item = {'name':'QQ','id':i}item_list.append(item)with open('xiaomi.json','a') as f:json.dump(item_list,f,ensure_ascii=False)

4. json.load()

将json文件读取,并转为python类型

import jsonwith open('D:\\spider_test\\xiaomi.json','r') as f:data = json.load(f)print(data)

json模块总结

# 爬虫最常用
1、数据抓取 - json.loads(html)将响应内容由: json 转为 python
2、数据保存 - json.dump(item_list,f,ensure_ascii=False)将抓取的数据保存到本地 json文件# 抓取数据一般处理方式
1、txt文件
2、csv文件
3、json文件
4、MySQL数据库
5、MongoDB数据库
6、Redis数据库

JsonPath(了解)

JsonPath 是一种信息抽取类库,是从JSON文档中抽取指定信息的工具,提供多种语言实现版本,包括:Javascript, Python, PHP 和 Java。

JsonPath 对于 JSON 来说,相当于 XPATH 对于 XML。

下载地址:https://pypi.python.org/pypi/jsonpath

安装方法:点击Download URL链接下载jsonpath,解压之后执行python setup.py install

官方文档:http://goessner.net/articles/JsonPath

JsonPath与XPath语法对比:

Json结构清晰,可读性高,复杂度低,非常容易匹配,下表中对应了XPath的用法。

XPathJSONPath描述
/$根节点
.@现行节点
/.or[]取子节点
..n/a取父节点,Jsonpath未支持
//..就是不管位置,选择所有符合条件的条件
**匹配所有元素节点
@n/a根据属性访问,Json不支持,因为Json是个Key-value递归结构,不需要。
[][]迭代器标示(可以在里边做简单的迭代操作,如数组下标,根据内容选值等)
|[,]支持迭代器中做多选。
[]?()支持过滤操作.
n/a()支持表达式计算
()n/a分组,JsonPath不支持

示例:

我们以拉勾网城市JSON文件 http://www.lagou.com/lbs/getAllCitySearchLabels.json 为例,获取所有城市。

# jsonpath_lagou.pyimport requests
import jsonpath
import json
import chardeturl = 'http://www.lagou.com/lbs/getAllCitySearchLabels.json'
response = equests.get(url)
html = response.text# 把json格式字符串转换成python对象
jsonobj = json.loads(html)# 从根节点开始,匹配name节点
citylist = jsonpath.jsonpath(jsonobj,'$..name')print (citylist)
print (type(citylist))
fp = open('city.json','w')content = json.dumps(citylist, ensure_ascii=False)
print (content)fp.write(content.encode('utf-8'))
fp.close()
http://www.yayakq.cn/news/806004/

相关文章:

  • 做关键字要改网站0基础12天精通网站建设
  • 市场营销网站建设广东建设信息公开网站
  • 淮安建设机械网站制作电子商务网站建设基本流程
  • 成都网站建设公司司定制型网站建设服务器
  • 制作一个网站能多少钱个人网页设计html代码免费
  • 自己做个网站好还是做别人会员好网站建设公司会议网站
  • 做流量网站吗金昌市住房和城乡建设局网站
  • 南宁新技术产业建设开发总公司网站做网站公司怎样
  • 2017一起做网店网站伊春百姓网免费发布信息网
  • 有没有做任务的网站个人网上银行登录官网
  • 辽源做网站的公司网站建设相关图片
  • 郑州建设厅网站百万网站建设报价
  • 西安网站建设培训学校网站建设 维护 服务描述
  • 常州网站设计平台企业信息公示系统全国官网
  • 泉州模板自助建站求一个做健身餐的网站
  • 手机软件下载网站山东一建建设有限公司官方网站
  • 怎么做网站切图河南省住房和建设厅安监站网站
  • 泰安网站建设广告网站底部悬浮广告代码
  • 地产金融网站开发wordpress版本选择
  • 开发公司对物业公司的补贴怎么开票wordpress怎样优化3
  • 企业级网站内容管理解决方案seo竞价培训
  • 网站需求报告怎么写网站跟换域名
  • 搜索引擎提交网站wordpress图像验证码
  • 网站排名分析 用户需求升腾d9116 做网站
  • 乐陵森洁新能源有限公司电话seoul是什么国家
  • 企业网站推广方式和策略wordpress 导航标签
  • 苏州招聘网站开发婚纱网站怎么做seo
  • 中国最厉害的互联网公司怎样做网站优化 知乎
  • 三 加强门户网站等新媒体建设网站集群 建设方案
  • 请人做竞价网站的要求重点网络运营主要做什么