XML को CSV में कन्वर्ट करें
फीड, प्रोडक्ट एक्सपोर्ट या RSS फाइल को स्प्रेडशीट की टेबल में बदलें। बार-बार आने वाला रिकॉर्ड एलिमेंट टूल खुद ढूंढ लेता है, XPath की जरूरत नहीं।
फाइलें यहां छोड़ें
.xml, .rss, .xhtml, .txt · 300 MB तक
और सेटिंगकम सेटिंग
कैसे CSV में कन्वर्ट करें
- 1
अपनी XML फाइल डालें
.xml या .rss फाइल को पेज पर खींचकर छोड़ें। पहले फाइल की जांच होती है, इसलिए अगर कोई क्लोजिंग टैग छूटा है, तो आधी टेबल की जगह उसकी लाइन और कॉलम बताए जाते हैं।
- 2
रिकॉर्ड एलिमेंट की पुष्टि करें
बार-बार आने वाला एलिमेंट खुद मिल जाता है और उसके साथ दिखता है कि उसमें कितने रिकॉर्ड हैं, जैसे चालीस रिकॉर्ड वाला rss.channel.item। अगर आपको यह लेवल नहीं चाहिए था, तो कोई दूसरा विकल्प चुनें।
- 3
कन्वर्ट करें और CSV डाउनलोड करें
बटन दबाएं और टेबल सेव करें।
XML में पंक्तियां नहीं होतीं, इसलिए उन्हें ढूंढा जाता है
ट्री से यह पता नहीं चलता कि कौन-सा लेवल रिकॉर्ड है। टूल डॉक्यूमेंट को छह लेवल की गहराई तक पढ़ता है और गिनता है कि हर पाथ पर एक ही नाम वाले कितने सिबलिंग एलिमेंट हैं। सबसे बड़ा समूह जीतता है, और बराबरी होने पर गहरा पाथ चुना जाता है, क्योंकि rss.channel.item, rss.channel से ज्यादा काम का है। रिकॉर्ड की गिनती के साथ ज्यादा से ज्यादा पांच विकल्प दिखाए जाते हैं।
एट्रिब्यूट, नेस्टिंग और दोहराए गए चाइल्ड एलिमेंट
हर एट्रिब्यूट @ प्रीफिक्स वाला अलग कॉलम बनता है, ताकि प्रोडक्ट का id उसी नाम के चाइल्ड एलिमेंट से न टकराए। चाइल्ड एलिमेंट आपकी तय की गई गहराई तक डॉट वाले नामों के कॉलम बनते हैं, और उससे गहरा हिस्सा एक सेल में JSON के रूप में लिखा जाता है। दोहराए गए चाइल्ड एलिमेंट को जोड़ा जा सकता है, नंबर दिया जा सकता है या JSON के रूप में रखा जा सकता है।
नेमस्पेस और खतरनाक डॉक्यूमेंट
नेमस्पेस प्रीफिक्स डिफॉल्ट रूप से हटा दिए जाते हैं, इसलिए dc:title सीधे title कॉलम बनता है, और तीन शब्दावलियों वाली फीड से भी पढ़ने लायक हेडर मिलते हैं। जो डॉक्यूमेंट अपने DOCTYPE में कस्टम एंटिटी घोषित करते हैं, उन्हें एंटिटी फैलाने की जगह पार्सिंग से पहले ही मना कर दिया जाता है। ब्राउजर का टैब ऐसी ही फाइलों से अटकता है।
कन्वर्ट करने के लिए कुछ भी अपलोड नहीं होता
वैलिडेटर, पार्सर और CSV राइटर, तीनों इसी ब्राउजर टैब में चलने वाला JavaScript हैं। आपके डॉक्यूमेंट का कोई हिस्सा सर्वर को नहीं भेजा जाता, न सेव होता है, न लॉग में जाता है, और इंटरनेट बंद होने पर भी टूल काम करता रहता है। टैब बंद करते ही फाइल का कुछ भी बाकी नहीं रहता।
अक्सर पूछे जाने वाले सवाल
टूल कैसे तय करता है कि कौन-सा एलिमेंट रिकॉर्ड है?
दोहराव गिनकर। छह लेवल की गहराई तक हर पाथ पर एक ही नाम वाले सिबलिंग एलिमेंट देखे जाते हैं, और जिस पाथ पर वे सबसे ज्यादा हैं, वही रिकॉर्ड बनता है। दो पाथ बराबर हों, तो गहरा पाथ जीतता है। बाकी विकल्प अपनी गिनती के साथ दिखते रहते हैं, और अजीब ढांचे वाले डॉक्यूमेंट के लिए आप पाथ खुद भी लिख सकते हैं।
XML एट्रिब्यूट कहां जाते हैं?
हर एट्रिब्यूट @ प्रीफिक्स वाले नाम का कॉलम बनता है, इसलिए id एट्रिब्यूट @id कहलाता है और id नाम के चाइल्ड एलिमेंट से अलग रहता है। अगर आपके एक्सपोर्ट में ऐसे एट्रिब्यूट हैं जिनकी जरूरत नहीं, तो एट्रिब्यूट की सेटिंग को स्किप पर करें: सारे एट्रिब्यूट हट जाएंगे और टेबल पतली हो जाएगी।
रिकॉर्ड के अंदर नेस्टेड एलिमेंट का क्या होता है?
वे आपकी तय की गई गहराई तक price.currency जैसे डॉट वाले नामों के कॉलम बनते हैं। उस सीमा से नीचे का पूरा सबट्री एक ही सेल में JSON के रूप में लिखा जाता है। इससे डेटा बचा रहता है और हजारों लगभग खाली कॉलम नहीं बनते।
CSV की शुरुआत में बाइट ऑर्डर मार्क क्यों होता है?
ताकि डबल क्लिक पर Excel फाइल को UTF-8 पहचाने, न कि किसी पुराने कोड पेज का अंदाजा लगाकर एक्सेंट वाले या सिरिलिक अक्षर बिगाड़ दे। अगर फाइल किसी स्क्रिप्ट या डेटाबेस लोडर के लिए है जिसे यह मार्क पसंद नहीं, तो सादा UTF-8 बस एक सेटिंग दूर है।
Excel में सब कुछ एक ही कॉलम में दिखता है, क्या गड़बड़ है?
फाइल में कोई गड़बड़ी नहीं है। Excel आपके सिस्टम की लोकेल वाले सेपरेटर से कॉलम बांटता है, और यूरोप के बड़े हिस्से में यह सेमीकोलन है। सेमीकोलन चुनकर फिर से कन्वर्ट करें, या मौजूदा फाइल पर Data और फिर Text to Columns इस्तेमाल करें।
क्या यह RSS या Atom फीड पर काम करता है?
हां, यह सबसे आसान मामला है। पहचान खुद rss.channel.item या उसके बराबर के entry एलिमेंट पर पहुंचती है, हर आइटम एक पंक्ति बनता है, और प्रीफिक्स हटने के बाद Dublin Core या media टैग जैसे नेमस्पेस वाले एक्सटेंशन सामान्य कॉलम बन जाते हैं।
बराबर के चिह्न से शुरू होने वाली वैल्यू से पहले कोट क्यों आ गया?
वरना स्प्रेडशीट उसे फॉर्मूला मान लेती, और किसी अनजान फीड की वैल्यू ऐसी बनाई जा सकती है कि फाइल खोलते ही कोई कमांड चल जाए। शुरुआत का एपॉस्ट्रॉफी उसे बेअसर कर देता है। -5 जैसी सादी ऋणात्मक संख्याएं जैसी हैं वैसी रहती हैं।
मेरी फाइल में DOCTYPE है और उसे मना कर दिया गया, क्यों?
एंटिटी घोषित करने वाला DOCTYPE जानबूझकर मना किया जाता है। नेस्टेड एंटिटी की परिभाषाएं फैलकर कई गीगाबाइट टेक्स्ट बन सकती हैं और टैब को अटका सकती हैं, और बाहरी एंटिटी दूसरी जगह की फाइलें पढ़ने की कोशिश कर सकती हैं। DOCTYPE से एंटिटी की घोषणाएं हटाएं, तो डॉक्यूमेंट सामान्य रूप से कन्वर्ट हो जाएगा।