爬虫笔记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)
相关推荐
我命由我123454 分钟前
PDFBox - PDF 页面坐标系、PDF 页面尺寸获取、PDF 页面位置计算
java·服务器·开发语言·笔记·后端·java-ee·pdf
做一道光13 分钟前
2、SVPWM原理及实现学习笔记
笔记·学习·嵌入式·电机控制
繁花与尘埃1 小时前
CSS简介(本文为个人学习笔记,内容整理自哔哩哔哩UP主【非学者勿扰】的公开课程。 > 所有知识点归属原作者,仅作非商业用途分享)
css·笔记·学习
长桥夜波1 小时前
【第十九周】机器学习笔记08
人工智能·笔记·机器学习
摇滚侠2 小时前
Spring Boot3零基础教程,Kafka 小结,笔记79
spring boot·笔记·kafka
摇滚侠2 小时前
Spring Boot3零基础教程,自定义 starter,把项目封装成依赖给别人使用,笔记65
数据库·spring boot·笔记
colus_SEU2 小时前
【编译原理笔记】3.3 Specification of Tokens
笔记·编译原理
Yeats_Liao2 小时前
Go Web 编程快速入门 08 - JSON API:编码、解码与内容协商
后端·golang·json
特种加菲猫2 小时前
自定义协议、序列化与守护进程:构建可靠后端服务
linux·网络·笔记
霍格沃兹_测试3 小时前
软件测试 | 测试开发 | app自动化测试之Appium 原理 与 JsonWP 协议分析
json