前言

有些文件长得像json的键值对格式,但又不完全是。有时需要提取出其中某些值,可以先手动处理成json文件,然后用python的json模块。

示例1:每行键值对

提取其中的caseId的值

{"isself":"1","reason":"","caseId":"123456","callResult":"1","attitude":"0"}
{"callFailReason":"不确定","caseId":"234567","callResult":"0"}
{"callFailReason":"暂时无法连接","caseId":"345678","callResult":"0"}
{"callFailReason":"暂时无法连接","caseId":"456789","callResult":"0"}
{"callFailReason":"超时","caseId":"567891","callResult":"0"}
{"callFailReason":"暂时无法连接","caseId":"678912","callResult":"0"}
...
{"callFailReason":"暂时无法连接","caseId":"789123","callResult":"0"}
  1. 使用sed在行尾批量插入,
sed -i 's/$/,/g' ./test.txt
  1. 手动在文件开始的地方和文件末尾添加中括号,删除最后一行的逗号,接着后缀名改为.json。最终处理示例:
[{"isself":"1","reason":"","caseId":"123456","callResult":"1","attitude":"0"},
{"callFailReason":"不确定","caseId":"234567","callResult":"0"},
...
{"callFailReason":"暂时无法接通","caseId":"345678","callResult":"0"}]
  1. 编辑python脚本:process_jsonlike.py
import json

with open("test.json","r",encoding="utf-8") as f1:
rst = json.load(f1) with open("rst.txt", "a",encoding="utf-8") as f2:
for i in rst:
caseid = i["caseId"]
f2.write(f"{caseid}\n")
  1. 查看结果文件:rst.txt
head rst.txt

未完待续

占位

python处理类似json的文件的更多相关文章

  1. python cookbook第三版学习笔记七:python解析csv,json,xml文件

    CSV文件读取: Csv文件格式如下:分别有2行三列. 访问代码如下: f=open(r'E:\py_prj\test.csv','rb') f_csv=csv.reader(f) for f in ...

  2. Python基础之JSON

    作用 对Python对象进行序列化,便于存储和传输 Python对象与JSON字符串相互转换 Python对象转JSON字符串 import json data = [ { 'a' : 1, 'b' ...

  3. (Python )格式化输出、文件操作、json

    本节学习Python的格式化输出,文件操作以及json的简单用法 1.格式化输出 将非字符串类型转换成字符串,可以使用函数:str() 或者repr() ,(这两个函数的区别目前我还没搞懂,求解答) ...

  4. python脚本解析json文件

    python脚本解析json文件 没写完.但是有效果.初次尝试,写的比较不简洁... 比较烦的地方在于: 1,中文编码: pSpecs.decode('raw_unicode_escape') 2,花 ...

  5. python3.4学习笔记(二十六) Python 输出json到文件,让json.dumps输出中文 实例代码

    python3.4学习笔记(二十六) Python 输出json到文件,让json.dumps输出中文 实例代码 python的json.dumps方法默认会输出成这种格式"\u535a\u ...

  6. Python实现类似JavaScript 的Json对象

    Python实现类似JavaScript 的Json对象 用过js的都知道 js中json也是一个对象,所以可以直接通过class.attr 取值,当attr不存在时也不会报错,那么Python可不可 ...

  7. python中读取json文件报错,TypeError:the Json object must be str, bytes or bytearray,not ‘TextIOWrapper’

    利用python中的json读取json文件时,因为错误使用了相应的方法导致报错:TypeError:the Json object must be str, bytes or bytearray,n ...

  8. 解决python 保存json到文件时 中文显示16进制编码的问题

    python 2.7 import codecs import json with codecs.open('Options.json', 'w', encoding='utf-8') as f: j ...

  9. 【python】将json串写入文件,并以json格式读取出来

    写json--json.dumps 代码: import json #要写入文件的json串(dict格式) result ={', 'https://appapi.xxxx.com/appapi/b ...

  10. python 生成json格式文件,并存储到手机上

    上代码 #!/usr/bin/env python # -*- encoding: utf-8 -*- import json import os import random "" ...

随机推荐

  1. ad-hoc实战

    ad-hoc实战 要求:利用Ansible搭建一个简易的作业网站,web端文件上传目录共享至nfs端,nfs的数据同步至backup 环境准备 主机名 主机角色 外网IP 内网IP m01 ansib ...

  2. 2021-04-04:给定一个非负数组arr,和一个正数m。 返回arr的所有子序列中累加和%m之后的最大值。

    2021-04-04:给定一个非负数组arr,和一个正数m. 返回arr的所有子序列中累加和%m之后的最大值. 福大大 答案2021-04-04: 自然智慧即可. 1.递归,累加和. 2.动态规划,累 ...

  3. docker安装kibana,报错Kibana server is not ready yet,未解决

    1.命令 docker run -d -e ELASTICSEARCH_URL=http://192.168.101.158:9200 -p 5601:5601 --name kibana kiban ...

  4. Could not resolve com.android.tools.lint:lint-kotlin:26.2.0.

    好久没有使用weexplus publish android 打包apk, 今一运行失败了,提示Could not resolve com.android.tools.lint:lint-kotlin ...

  5. drf——jwt

    jwt原理 使用jwt认证和使用session认证的区别 三段式 eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibm ...

  6. bugku xxx二手交易市场

    打开靶场 分析 很明显需要先注册一个账号才行 完成后发现两个上传图片的地方 一个是更换头像, 一个是发布内容 先更换头像试试 首先上传一个木马图片,会发现一直转圈圈,(卡住了) 只能先上传正常的图片了 ...

  7. TheTransformerPlaybookforNLPandLanguageUnderstanding

    目录 2.1 基本概念解释 2.2 技术原理介绍 2.3 相关技术比较 3. 实现步骤与流程 3.1 准备工作:环境配置与依赖安装 3.1.1 准备工作:环境配置与依赖安装 3.1.2 核心模块实现 ...

  8. C++ 核心指南之资源管理(中)

    C++ 核心指南(C++ Core Guidelines)是由 Bjarne Stroustrup.Herb Sutter 等顶尖 C++ 专家创建的一份 C++ 指南.规则及最佳实践.旨在帮助大家正 ...

  9. PowerBuilder从入坑到放弃(二)编码规范

    前言 上一篇我们从0到1用pb开发了一个helloworld程序,并成功将开发的程序编译打包并且制作了安装包. 程序员最讨厌的莫过于写文档和别人不写注释. 不知道大家会不会和我一样,在找bug时,有段 ...

  10. Vue + Element ui 实现动态表单,包括新增行/删除行/动态表单验证/提交功能

    总结/朱季谦 最近通过Vue + Element ui实现了动态表单功能,该功能还包括了动态表单新增行.删除行.动态表单验证.动态表单提交功能,趁热打铁,将开发心得记录下来,方便以后再遇到类似功能时, ...