文章目录

  • 1. 工作场景
  • 2. 需求分析
  • 3.解决方案
  • 4. 结语

1. 工作场景

同事段工,期望我将提取出的信息,保存为如下协议的形式,提供给他

[{id: 1,info: [段落]},{id: 2,info: [段落, 列表]},{id: 3,info: [标题]}
]

2. 需求分析

    最终保存到json中的信息是一个list, 每一个list中的元素代表一条信息,该信息为一个字典。假设res表示我们已经拿到信息,如果直接使用

with open("result.json", "w") as fw:json.dump(res, fw)

    会出现3个问题:

  1. json中的中文会乱码
  2. json文件中的内容为一行,无美观的布局
  3. 无法一定保证保存在json文件中的id是按照顺序从小到大排列

3.解决方案

    针对上述三个注意点,需要针对性的增加一些代码。
针对问题1:需要显式的将dump函数中的ensure_ascii设置为False。

with open("result.json", "w") as fw:json.dump(res, fw, ensure_ascii = False)

针对问题2: 需要显式的设置dump函数中的indent,例如设置为常见的4。

with open("result.json", "w") as fw:json.dump(res, fw, ensure_ascii = False, indent = 4)

针对问题3:可以在dump之前对集合res中的元素按照id进行排序。

res.sort(key = lambda x: x['id'])
with open("result.json", "w") as fw:json.dump(res, fw, ensure_ascii = False, indent = 4)

4. 结语

    通过上述一些细节的处理,保存的json文件形式才会是需求提出者期望的那样。至此就可以将json文件交付给段工了。

通过一些细节的调整,将信息优雅的保存为json形式相关推荐

  1. 使用Requests+正则表达式爬取中国工作网招聘信息,并保存为JSON格式

    文章目录 一.准备 1.数据 2.数据字段 二.数据爬取 1.设置预设 2.观察网页源码(部分) 3.制定正则规则 三.数据存取 存为JSON文件 将多个字段列表进行打包,并放入一个list中 四.完 ...

  2. Arcgis: 利用xls文件绘制地图+细节参数调整(新手小白一看就懂)

    软件版本: 用到的地理数据库: 国家基础地理数据400万 常用链接: 地图底图(国家基础地理数据 / 在线底图 / BIGEMAP抠底图) 标准底图服务系统 全国地理信息资源目录服务系统 在线经纬度转 ...

  3. java把信息存到文件里,Java 如何将字符串信息直接写保存到文本文件?

    如何将字符串信息直接写保存到文本文件? Java 提供了很方便的方法,代码如下: import java.io.File; import java.io.StringWriter; /** * 传入文 ...

  4. 【s操作】轻松优雅的保存微信群图片和朋友圈图片

    上次聊了一下锤子手机的使用体验:锤子手机使用2年,聊聊锤子手机,坚果手机功能使用体验,主要介绍了几个软件上的使用技巧.最近几年越来越重视软件的使用体验,主要因为软件更亲民,硬件上从835又到845又到 ...

  5. Virtualbox安装Kylin 10后调整屏幕分辨率无法选中保存按钮

    Virtualbox安装Kylin 10后调整屏幕分辨率无法选中保存按钮 Fred.li 2022-10-29 Virtualbox虚拟机安装Kylin 10后默认分辨率非800*600,使用起来极为 ...

  6. 获取log文件信息,并保存至Excel文件

    获取log文件信息,并保存至Excel文件 日常工作中,可能需要我们从txt文件中截取海量的信息,只要寻找到这种信息的规律或者定位好信息情况,在我的txt文件中有海量的信息,而我只需要截取09/11/ ...

  7. Python 爬虫 之 爬取王者荣耀的英雄们所有大皮肤图片,并 json 形式保存英雄列表信息到本地

    Python 爬虫 之 爬取王者荣耀的英雄们所有大皮肤图片,并 json 形式保存英雄列表信息到本地 目录

  8. python爬取玉米、小麦、水稻信息数据到本地为网页形式和mysql数据库中

    1.创建Scrapy项目 scrapy startproject ExGrain 2.进入项目目录,使用命令genspider创建Spider scrapy genspider exgrain ex- ...

  9. 用python爬取基金网信息数据,保存到表格,并做成四种简单可视化。(爬虫之路,永无止境!)

    用python爬取基金网信息数据,保存到表格,并做成四种简单可视化.(爬虫之路,永无止境!) 上次 2021-07-07写的用python爬取腾讯招聘网岗位信息保存到表格,并做成简单可视化. 有的人留 ...

最新文章

  1. [MaxCompute MapReduce实践]通过简单瘦身,解决Dataworks 10M文件限制问题
  2. IIS+ASP+MySQL8.0+中文乱码解决方案(2019.7)
  3. ActionContext_、ValueStack、Stack_Context关系
  4. Java 并发总结——进程与线程
  5. 产品经理学习---高级产品经理
  6. fscokopen 中执行超时 使用stream_set_timeout设置超时
  7. 解析C#中[],List,Array,ArrayList的区别及应用
  8. 会话控制_2-5 编程练习
  9. xml和TreeView
  10. JavaScript 习题及面试题 3
  11. 《CLR via C#》读书笔记-.NET多线程(一)
  12. 磁珠 符号_电子元件磁珠该如何使用呢?
  13. ASP.NET20003人事薪资管理系统
  14. WinDbg 定位句柄泄漏问题
  15. Javascript基础语法总结
  16. CuPy is not correctly installed
  17. 5、hibernate第六课
  18. 芯片和集成电路的区别和联系
  19. 2022-2027年中国房产网络服务行业市场全景评估及发展战略规划报告
  20. 基于AWS的Lambda+Alexa服务添加智能家居设备 (一)

热门文章

  1. 谁不知道华为云CDN加速服务,我都会心疼好久
  2. imx6ull_SPI
  3. MySQL修改表字段名
  4. flex布局换行后均匀分布
  5. 中国电影百年经典台词100句
  6. 【成功解决】错误使用 mex 未找到支持的编译器或 SDK。您可以安装免费提供的 MinGW-w64 C/C++ 编译器
  7. 正则表达式:切割(叠词)
  8. 计算e=1+1/1!+1/2!+...当1/n!<1e-7停止
  9. python运行非常慢的解决-一行代码让你的python运行速度提高100倍
  10. ELITEBOOK 惠普 限制功能