精华内容
下载资源
问答
  • 2021-11-10 11:44:53

    目前在做的一个实验的数据集包含了两万个json文件,为了能高效读取所有的json文件并转换成dataframe格式以实现端到端的数据处理,不得不写了一个小工具:

    try:
        import ujson as json
    except ImportError:
        try:
            import simplejson as json
        except ImportError:
            import json
    import pandas as pd
    import os
    
    class data_utils():
        def __init__(self, data_path):
            self.data_path = data_path
    
    
        def to_dataframe(self):
            radar_dataframe = pd.DataFrame()
            all_files = [os.path.join(root, file) for root, dirs, files in os.walk(self.data_path) for file in files if file.endswith('.json')]
            data_list = [json.load(open(file)) for file in all_files]
            df = pd.DataFrame(data_list)
            return df
    
    

    更多相关内容
  • Python常用小技巧(五)——批量读取json文件

    千次阅读 多人点赞 2019-05-24 11:19:06
    Python常用小技巧(五)——批量读取json文件 前言:其实Python能够批量读取很多文件,这里,本人以json文件为例(json是标注图片时生成的文件,记录有标注的坐标和标签,友情推荐标注图片的工具:labelme),读取...

    Python常用小技巧(五)——批量读取json文件

    前言:其实Python能够批量读取很多文件,这里,本人以json文件为例(json是标注图片时生成的文件,记录有标注的坐标和标签,友情推荐标注图片的工具:labelme),读取想要的数据。大家也可以稍做修改,去读取其他类型的文件。

    一、材料准备

     - Python
     - os
     - json

    二、代码编写

    首先我们来观察一下我们需要处理的json文件

    打开json文件,我们可以看到一下内容

    我们需要获取的信息是 label 后面标注的种类,还有坐标信息

    期望输出的格式是:

    结构:
    n.json x1,y1,x2,y2,lable1 x1,y1,x2,y2,label2
    样例:
    21.json 203,1,511,116,shoes 248,2,350,44,welt 

    所以,知道标准后,我们的代码如下:

    # -*- coding:utf8 -*-
    import  json
    from os import listdir
    import os
    path = '/home/ljt/Documents/labelme'
    
    filelist = listdir(path)
    #for i in  filelist:
    #print(filelist[0].split(".")[0])
     #   i.split()
    fileIndex =[]
    
    #文件名读入时并非按照我们常识中的按照文件名字顺序读入,
    #例如:1.json,2.json,3.json;程序可能会按 3,1,2 的顺序读入,
    #这对我们后面批量处理造成很大的不便,所以读入文件名后,
    #我们要手动地对文件名进行一次排序
    #以下就是排序操作
    for i in range(0,len(filelist)):
        index = filelist[i].split(".")[0]
        fileIndex.append(int(index))
    #new_filelist =[]
    for j in range(1,len(fileIndex)):
        for k in range(0,len(fileIndex)-1):
            if fileIndex[k]>fileIndex[k+1]:
                preIndex = fileIndex[k]
                preFile = filelist[k]
                fileIndex[k] = fileIndex[k+1]
                filelist[k] = filelist[k+1]
                fileIndex[k+1] =preIndex
                filelist[k+1] = preFile
    
    #完成排序后,开始按照文件名顺序读取文件内容信息
    data = []#记录每个文件最终信息的列表
    labelpath = '/home/ljt/Documents/labelme/'
    for file in filelist:
        with open(labelpath+file, 'r') as txt:
            lines = txt.readlines()
            eachdata = []#记录单个文件信息的列表
            eachdata.append(file)  # fileName
            for each in range(0,len(lines)):
                word = lines[each].split('"')
                for i in range(0,len(word)):
                    if word[i] == 'shoes':
                        eachdata.append(int(int(lines[each + 5].split(',')[0]) * 416 / 512))
                        eachdata.append(int(int(lines[each + 6].split(',')[0]) * 416 / 512))
                        eachdata.append(int(int(lines[each + 9].split(',')[0]) * 416 / 512))
                        eachdata.append(int(int(lines[each + 10].split(',')[0]) * 416 / 512))#(xmin,ymin,xmax,ymax,'shoes')
                        eachdata.append('0')
                    elif word[i] == 'welt':
                        eachdata.append(int(int(lines[each + 5].split(',')[0]) * 416 / 512))
                        eachdata.append(int(int(lines[each + 6].split(',')[0]) * 416 / 512))
                        eachdata.append(int(int(lines[each + 9].split(',')[0]) * 416 / 512))
                        eachdata.append(int(int(lines[each + 10].split(',')[0]) * 416 / 512))  # (xmin,ymin,xmax,ymax,'shoes')
                        eachdata.append('1')
            txt.close()
            data.append(eachdata)
    
    
    
    #记录完成后,开始将数据写入txt文件
    with open('data.txt', 'w') as txt:
        for eachdata in data:
            line =eachdata[0]+' '
            i=0
            for i in range(1,len(eachdata)):
                if i % 5 ==0 and i > 1 and i!=len(eachdata)-1:
                    s =str(eachdata[i])+' '
                    line = line + s
                elif i==len(eachdata)-1:
                    line = line + str(eachdata[i])
                else:
                    s=str(eachdata[i])+','
                    line = line+s
            lines=line.replace('json','jpg')+'\n'
    
            txt.writelines('resize/'+lines)
        txt.close()
    print('finish')
    
    #        line='json'
    #        while line:
     #           line = txt.readline()
      #          word = line.split()
       #         for i in range(0,len(word)):
        #            if word[i] == "shoes":
    

    最终,我们能够得到一个这样的txt文件

    其中 0代表的是shoes,1代表welt

    展开全文
  • 1. json 的数据格式如下所示: { "type": "Feature", "properties": { "MC": null, "PWH": null, "SJ": "2015", "YDDM": "S41"}, "geometry": { "type": ...3. 一个文件夹中有多个json,需要批量读取并删除。
  • 场景:读取文件夹中的json文件后,循环请求稠州接口 import os import requests from urllib.parse import quote import re import json url = "http://172.30.2.74:6998/ruleCheck/validCheatTestJson" headers...

    场景:读取文件夹中的json文件后,循环请求稠州接口

    import  os
    import requests
    from urllib.parse import quote
    import re
    import json
    
    
    url = "http://172.30.2.74:6998/ruleCheck/validCheatTestJson"
    headers = {'Content-Type': 'application/x-www-form-urlencoded',
                "charset": "utf-8"
               }
    
    #读取文件夹中的文件名
    fileList=os.listdir('C:\\Users\\99063\\Desktop\\json\\')
    print(fileList)
    
    #循环读取文件,并请求
    for json_id in fileList:
        print(json_id)
    
        # json_idid="6-1.json"
    
        with open("C:\\Users\\99063\\Desktop\\json\\"+json_id, "r",encoding="utf-8") as f:  # 打开文件
            data = f.read()  # 读取文件
            #print(data)
    
        #reqdata='reqBody=%s'%data
        reqdata = 'reqBody=' + quote(data, 'utf-8')
        #print(reqdata)
    
        res = requests.post(url=url,data=reqdata.encode('utf-8'), headers=headers)
        print(res.text)
    

    展开全文
  • Python批量获取json文件的数据

    千次阅读 2019-08-29 17:18:04
    Python批量获取json文件的数据 前提:假设所有的json文件都放在同一文件夹下(data_dir) ...首先,通过os.listdir(data_...最后,通过info=json.load(j)来读取json文件内的内容,可以通过info['name']来获...

    Python :批量获取json文件的数据

    • 前提:假设所有的json文件都放在同一文件夹下(data_dir)

    • 获取步骤:

      • 首先,通过os.listdir(data_dir)获取路径data_dir下的所有文件的名称
      • 其次,通过j=open(json_name)来打开json文件
      • 最后,通过info=json.load(j)来读取json文件内的内容,可以通过info['name']来获取json中name对应项的值。具体代码如下:

    其中,我的json文件内容格式如下图所示:
    在这里插入图片描述

    import os
    import json    
    def get_car_json_info(data_dir):
        # get json file_names
        all_json=os.listdir(data_dir)
        
        for j_name in all_json:
            # open json file
            j=open(data_dir+j_name)
            
            # load info in json
            info=json.load(j)
            
            # get value of '__manufacturer__' and '__year__' 
            print(info['__manufacturer__'],info['__year__']) 
    

    结果如下图所示:
    在这里插入图片描述

    展开全文
  • 我现在需要处理一批不断传入的json格式的数据,格式是这样的: > comsou 0 {"id":"F45EAB09792C","v":"0.10","mid":5221,"raw_beacons_data":"123B6A1ABAD1B5;123B6A1ABAC1B5;"} comsou 0 {"id":"F45EAB09792C","v":...
  • python批量json文件转换成xml文件

    千次阅读 2022-05-05 10:41:25
    首先这是文件夹的文件目录,其中labeljson文件夹下放标注的json文件,trainset文件夹下面放标注的jpg和json文件,最终生成的xml文件会放在Annotations下 代码如下: #########################4、对.json格式的标签...
  • 读取一个文件中的多个json数据,可能还存在一些bug.为什么要超过50个字!看不起我的概括能力吗?
  • 本文实例为大家分享了Python实现读取json文件到excel表,供大家参考,具体内容如下一、需求1、'score.json' 文件内容:{"1":["小花",99,100,98.5],"2":["小王",90,30.5,95],"3":["小明",67.5,49.6,88]}2、读取json...
  • 前言:上次已经将了将json文件数据批量提取到了csv文件中,但是有时xlsx格式的文件更为方便,所以今天就把xlsx的文件也提取出来了,本博客讲实现对json文件批量的数据提取,并提取到xlsx文件中输出。注意:csv库直接...
  • 你是不是对成堆的json数据无法下手?想将其拆分成单个json,ok,
  • python批量修改json文件

    2021-01-12 09:53:02
    import jsonimport ospath = 'G:\Desktop\要修改文件的目录'dirs = os.listdir(path)num_flag = 0for file in dirs: # 循环读取路径下的文件并筛选输出if os.path.splitext(file)[1] == ".json": # 筛选csv文件nu...
  • 前言:上次讲到json文件批量格式化处理,本博客讲实现对json文件批量的数据提取,并提取到csv文件中输出。 问题场景: 成百上千的json文件,具有几乎相同的格式 需要简单重复的复制出json文件中某一个键值对的值...
  • python批量修改json文件中的指定字符

    千次阅读 2020-07-29 13:08:44
    python批量修改json文件中的指定字符win10 win10 在linux里一行代码就可以直接替换,但是windows我没找到这个功能,就只能用python了 代码如下: 实现了遍历目录下所有json文件,然后替换所有标签为lesionArea的...
  • 一、json转csv :将json中的数据转换成csv文件 import json import csv """ 需求:将json中的数据转换成csv文件 """ def json_to_csv(): # 1.分别 读,创建文件 json_fp = open("word.json", "r",encoding='utf-8...
  • Python读取json文件,并将其写入excel

    千次阅读 2021-04-18 16:03:33
    需要对一批谣言数据进行处理,该数据集是由清华大学自然语言处理与社会人文计算实验室整理的与疫情相关的谣言数据。 数据集的整体构成如下,共有324个文件,皆放在rumor_...1.Python读取json文件 (1)首先以读取一个文
  • 目录json教程python写入json文件python写入json文件参考完 涉及批量数据的时候,json真的挺好 json教程 JSON 教程:https://www.runoob.com/json/json-tutorial.html Python3 JSON 数据解析:...
  • #coding=utf-8import sunburntimport urllibfrom pymongo import Connectionfrom bson.objectid import ObjectIdimport loggingfrom datetime import datetimeimport jsonfrom time import mktimefrom feedparser im...
  • python 导入 json 文件到 MongoDB 中

    千次阅读 2021-10-21 13:36:06
    当前有一个 json 文本文件,包括结构和数据,希望通过 python 导入到 mongoDB 中。 数据准备 根据自己的需要填写 json 文件,也可以考虑使用好用的可视化工具进行编写,这里推荐使用的是 PlistEdit ,因为平时用得少...
  • 点击上方“Python爬虫与数据挖掘”,进行关注回复“书籍”即可获赠Python从入门到进阶共10本电子书今日鸡汤古调虽自爱,今人多不弹。大家好,我是Python进阶者。前言前几天在才哥的...
  • 微信小程序云开发数据库提供了从本地导入本地json数据的功能,因此当数据量很大的时候我们可以在本地用python批量生成json数据,然后再上传至云开发数据库中 一、python数据处理 1.思路 使用xlrd读取本地数据,获取...
  • 读取json文件切割图集

    2018-09-20 22:37:39
    读取json文件切割图集,支持按目录批量裁剪,保留命名
  • 利用Python解析json文件

    千次阅读 2020-11-28 04:21:30
    写在前面在金融风控领域,我们经常会使用到json格式的数据,例如运营商数据、第三方数据等。而这些数据往往不能直接作为结构化数据进行分析和建模。本文将介绍一种简单的、可复用性高的基于pandas的方法,可以快速地...
  • JSON或JavaScript Object Notation是一种轻...JSON使用的约定是程序员已知的,包括C,C ++,Java,Python,Perl等。JSON文档样本-{"book":[{"id":"01","language":"Java","edition":"third","author":"HerbertSchild...
  • 基本原理就是通过读取文件,将json数据读取出来,然后进行修改,再写回文件中。# -*- coding:utf-8 -*-import jsondef process_json(input_json_file, output_json_file):file_in = open(input_json_file, "r")file_...
  • python实现json文件批量格式化。
  • ipad的goodreader对JS文件支持不太好,虽然可以读取它但总是无法退出,回不了goodreader的主界面,因此我需要把js文件批量变成纯文本。基于这个目的,我搞了下面一个小应用:复制代码 代码如下:# -*- coding:utf-8 -*...
  • import json def json_excel(data): # 创建excel工作表 workbook = xlwt.Workbook(encoding='utf-8') worksheet = workbook.add_sheet('skiing') # 写表头 for index, val in enumerate(data[0].keys()): ...
  • python文件读写,mysql批量插入数据 采用了两种方法,第一中直接向mysql插入随机测试数据,第二种采用读写文件文件中读入数据插入mysql,适合从生产环境导入数据到测试环境库。 如果数据量很大的话,读取一条...
  • 1.需求:现在要求将服务器上523GB的json文件,导入到mongo库中,由于mongoimport 速度在25MB/s, 现在用脚本多进程将数据读取,在写入mongo中. 2.源码: # -*- coding: utf-8 -*- ... @功能 :读取json文件,存入mongo """ #...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 10,712
精华内容 4,284
关键字:

python批量读取json文件

友情链接: mclass.zip