温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Python爬虫数据的分类及json数据用法示例

发布时间:2021-03-29 09:39:56 来源:亿速云 阅读:202 作者:小新 栏目:开发技术

小编给大家分享一下Python爬虫数据的分类及json数据用法示例,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!

数据的结构化分类

       一般来讲对我们而言,需要抓取的是某个网站或者某个应用的内容,提取有用的价值。内容一般分为三部分,结构化的数据、半结构化的数据和非机构化数据。
1.结构化数据:
       可以用统一的结构加以表示的数据。可以使用关系型数据库表示和存储,表现为二维形式的数据,一般特点是:数据以行为单位,一行数据表示一个实体的信息,每一行的数据的属性是相同的。
2.半结构化数据:
       结构化数据的一种形式,并不符合关系型数据库或其他数据表的形式关联起来的数据模型结构,但包含相关标记,用来分隔语义元素以及对记录和字段进行分层。因此他也被成为自描述的结构。常见的半结构数据有:html,xml和json等、实际上是以树或者图的结构来存储的。
       对于半结构化数据,节点中属性的顺序是不重要的,不同的半结构化数据的属性的个数是不一样的。这样的数据格式,可以自由的表达很多有用的信息,包含自描述信息。所以半结构化数据的扩展性很好,特别适合于在互联网中大规模传播。
3.非结构化数据
       就是没有固定的结构。各种文档,图片,视频或者音频都属于非结构化数据。对于这类数据,我们一般直接整体进行存储,而且一般存储为二进制形式。

json数据

       json(JavaScript Object Notation,JS对象标记)是一种轻量级的数据交换格式。他基于ECMAScript(w3c制定的JS规范)的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据。简介和清晰的层次结构使得JSON成为理想的数据交换语言。
       特点:易于阅读、易于机器生成、有效提升网络速度。
       JSON语法规则:在JS语言中,一切都是对象。因此,任何支持的类型都可以通过json来表示。例如字符串、数字,对象,数组。
Js中对象和数组是比较特殊并且常用的两种类型:
       1.对象表示为键值对{name:'zhangsan',age:'7'}
       2.数据有逗号分隔[1,2,3,4,5]
       3.花括号保存对象
       4.方括号保存数组。
js的对象就相当于python中的字典
js的数组就相当于Python中的列表
       因为json用来存储js的对象或者数组,所以在Python中我们可以将json转化为list或者dict。

解析json的包json:

       json.dumps(python的list或者dict)---->(返回值)---->json字符串。
       json.loads(json字符串)------>(返回值)----->python的list或者dict.

       json.dump(list/dict,fp)—>list,或者字典保存到json文件中。
       json.load(fp)—>list/dict:从json文件中读出json数据。

       json键值对是用来保存js对象的一种方式,和js对象的写法页大同小异,比如:
{“firstName”:“Json”,“Class”:“aid1111”}等价于下面这条js语句:{firstName:“Json”,Class:“aid1111”}。
       很多人搞不清楚json和js对象的关系,甚至谁是谁都不清楚。其实可以这么理解:【JSON是JS对象的字符串表达式,他使用文本形式表示一个JS对象的信息,本质是一个字符串。】
       如var obj = {a:“hello”,b:“World”}这是一个js对象。注意,键名也是可以用引号包裹的var json = ' {“a”:“hello”,“b”:“World”}'这是一个json字符串,本质上是一个字符串。
       JSON作为数据包格式传输的时候具有更高的效率,这是因为JSON不想xml那样具有严格的闭合标签,这就让有效数据量与总数据包比大大提升,从而减少同等数据流量的情况下,网络的传输的压力大大减低。

看完了这篇文章,相信你对“Python爬虫数据的分类及json数据用法示例”有了一定的了解,如果想了解更多相关知识,欢迎关注亿速云行业资讯频道,感谢各位的阅读!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI