爬虫笔记12——网页爬取数据写入json文件

json数据格式介绍

JSON全称为JavaScript Object Notation, 也就是JavaScript对象标记,它通过对象和数组的组合来表示数据,构造简洁但是结构化程度非常高,是一种轻量级的数据交换格式。该笔记中,我们就来了解如何利用Python保存数据到JSON文件。

python中的json库

直接导入该模块:

python 复制代码
import json
方法 作用
json.dumps() 把python对象转换成json对象,生成的是字符串。
json.dump() 用于将dict类型的数据转成str,并写入到json文件中

爬虫案例 - 4399网站游戏信息采集

python 复制代码
import json
import requests
from lxml import etree


def spider_4399(url):
    response = requests.get(url).content.decode('gbk')
    # print(response)
    tree = etree.HTML(response)
    # print(tree)
    gameLists = tree.xpath("//ul[@class='tm_list']/li/a")
    gameDicts = dict()
    result = list()
    # print(gameLists)
    for temp in gameLists:
        gameDicts['game'] = temp.xpath('./text()')[0]
        gameDicts['url'] = temp.xpath('./@href')[0]
        result.append(gameDicts)
    with open('./game.json', 'w', encoding='utf-8') as f:
        f.write(json.dumps(result, indent=2, ensure_ascii=False))
    print('程序结束!')



url = 'https://www.4399.com/'
spider_4399(url)
相关推荐
一隅论数智3 小时前
给AI一张“业务概念地图“:本体如何从哲学走向企业智能
大数据·人工智能·经验分享·笔记·学习·学习方法·政务
譕痕3 小时前
JSONObject与JSONArray封装数据格式区别
java·json
A黄俊辉A3 小时前
uniapp webview中实现 app和内嵌的H5双向通信
vue.js·json
深圳老胡5 小时前
STM32F407 控制 L6470 步进电机驱动 —— 控制过程简介
笔记·stm32·单片机·嵌入式硬件·代码规范
Because_of_Her16 小时前
并查集-听课笔记
笔记·算法·并查集
彧azz6 小时前
Linux 环境下 Redis 学习总结:数据类型、持久化、锁、事务、主从与缓存问题
linux·redis·笔记·学习·面试
陈卫军老师7 小时前
陈卫军:把口味写在一张纸上,店才稳得住
经验分享·笔记·流量运营
`流年づ7 小时前
人工智能学习笔记 - 补充
人工智能·笔记·深度学习·学习
qeen877 小时前
【Linux】操作系统之进程介绍(二)
linux·笔记·学习·进程
从零开始的嵌入式之旅8 小时前
day47
arm开发·经验分享·笔记·嵌入式硬件