json爬虫

本文介绍了JSON的基本概念,它作为JavaScript对象表示法,用于轻量级数据交换。文章详细阐述了JSON中的对象和数组,以及如何在JavaScript中读取和输出JSON数据,强调了其在数据结构中的灵活性和在爬虫流程中的应用。
摘要由CSDN通过智能技术生成

json的含义

爬虫的流程

总结

json,全称JavaScript object notation,也就是JavaScript对象标记,通过对象个数组的组合来表示数据,构造简洁但是结构化程度非常高,是一种轻量级的数据交换格式。

1、对象和数组

在 JavaScript 语言中,一切都是对象。因此,任何支持的类型都可以通过 JSON 来表示,例如字符串、数字、对象、数组等,但是对象和数组是比较特殊且常用的两种类型,下面简要介绍一下它们。
对象:它在 JavaScript 中是使用花括号 {} 包裹起来的内容,数据结构为 {key1:value1, key2:value2, …} 的键值对结构。在面向对象的语言中,key 为对象的属性,value 为对应的值。键名可以使用整数和字符串来表示。值的类型可以是任意类型。
数组:数组在 JavaScript 中是方括号 [] 包裹起来的内容,数据结构为 [“java”, “javascript”, “vb”, …] 的索引结构。在 JavaScript 中,数组是一种比较特殊的数据类型,它也可以像对象那样使用键值对,但还是索引用得多。同样,值的类型可以是任意类型。
json可以写成以下的形式:

[{
    "name":"bo",
    "old":"18",
    "action":"jiasai"},{
    "name":"beichaung",
    "old":"19",
    "action":"shangchang"}]

由中括号包围的就相当于列表类型,列表中的每个元素可以是任意类型,这个实例中它是字典类型,由大括号包围。
json可以由以上两种形式自由组合而成,可以无限次嵌套,结构清晰,是数据交换的极佳方式。

2、读取json

我们可以调用库的loads()方法将json文本字符串转为json对象,可以通过dumps()方法将json对象转为文本字符串。

import json

str = '''
[{
    "name":"bo",
    "old":"18",
    "action":"jiasai"},{
    "name":"beichaung",
    "old":"19",
    "action":"shangchang"}]
'''

print(type(str))
data = json.loads(str)
print(data)
print(type(data))
print(data[0]['old'])
<class 'str'>
[{'name': 'bo', 'old': '18', 'action': 'jiasai'}, {'name': 'beichaung', 'old': '19', 'action': 'shangchang'}]
<class 'list'>
18
import json

data = [{'name': '王伟', 'old': '18', 'action': '假赛'}, {'name': '北川', 'old': '19', 'action': '上场'}]
with open('data1.json','w') as file:
    file.write(json.dumps(data,indent=2,ensure_ascii=False));

3、输出json

import json

data = [{
    'name':'yuanhuiming',
    'gender':'famale',
    'birthday':'1999-9-17'
}]

with open('data.json','w') as file:
    file.write(json.dumps(data,indent=2))

调用dumps()方法将json对象转化为字符串。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值