मेरे पास लगभग 26 जीबी डेटा के साथ एक जेसन मेटाडेटा फ़ाइल है। स्पष्ट कारणों से मुझे पढ़ने के लिए एक नई json फ़ाइल बनाने के लिए पहली 100 पंक्तियों को निकालने की आवश्यकता है, ताकि मेरे पास आने वाले कोड पर कम परिवर्तन संभव हो, जो कि 100 लाइनों पर परीक्षण के लिए होना चाहिए और एक बार डिबग पूरा हो जाने पर कोड लागू करें पूरी फाइल पर।

मैंने सीएसवी को जेसन निर्यात करने पर पढ़ा है लेकिन मैं जेसन संरचना और फ़ाइल प्रकार को बनाए रखना चाहता हूं, क्या पाइथन के साथ ऐसा करना संभव है?

मेरी फ़ाइल कुछ अतिरिक्त डेटा के साथ एक जेसन है, इसलिए मैं इसे पहले स्थान पर पढ़ने के लिए एक काम का उपयोग करता हूं। ऐसा दिखता है:


{"_id":{"$oid":"5b9fd47507b317551a7bfb8f"},"title":"It's Okay If You Didn't Like 'Boyhood', And Here Are Many Reasons Why","url":"https://m.huffpost.com/us/entry/6694772","article_text"

और मैंने इसे इस तरह पढ़ा

with open('metadata.json', 'r') as data:
    data = json.loads("[" + data.read().replace("}\n{", "},\n{") + "]")

धन्यवाद!

0
rtz 4 पद 2019, 15:41

1 उत्तर

तुम कोशिश कर सकते हो:

import json
with open('file.json') as ip_file:
  o = json.load(ip_file)
  chunkSize = 100
  for i in range(0, len(o), chunkSize):
    with open('new_file' + '.json', 'a') as out_file:
      json.dump(o[i:i+chunkSize], out_file)
0
Harsha Biyani 4 पद 2019, 20:50