爬虫笔记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 小时前
《Rust程序设计》学习笔记八:结构体
笔记·学习·rust·rust程序设计
志尊宝5 小时前
Vue3 零基础每日笔记(082):文件上传实战——el-upload 校验、自定义上传、头像预览
前端·javascript·vue.js·笔记·#javascript·#vue.js
后季暖6 小时前
电商问数笔记(2)
笔记
xier_ran6 小时前
【infra之路】AI 编译器学习笔记(二):重拾 C++——移动语义与 LLVM 风格的类型转换
人工智能·笔记·学习
雪雪爱冲浪7 小时前
2026 年网络爬虫领域的Puppeteer vs. Playwright
爬虫·网络协议·测试工具·接口隔离原则
星恒随风8 小时前
Linux库的底层原理:ELF文件格式、静态链接、程序加载、虚拟地址空间与GOT/PLT详解
linux·运维·笔记·学习·状态模式
罗西的思考8 小时前
[Agent Memory / 强化学习] MemPO源码学习笔记 — (7)— 混合机制
笔记·学习
ClinicTech9 小时前
婴儿培养箱技术笔记:温控、报警与数据记录的三层架构
笔记
xiaominngtongxue9 小时前
从一次接触网实训课看中职实训教学的组织逻辑
笔记
xier_ran10 小时前
【infra之路】AI 编译器学习笔记(四):PatternRewriter 与贪心 driver
人工智能·笔记·学习