পাইথন এক্সএমএল থেকে জেএসওএন

Python Xml Json



এক্সটেনসিবল মার্কআপ ল্যাঙ্গুয়েজ (এক্সএমএল) এবং জাভাস্ক্রিপ্ট অবজেক্ট নোটেশন (জেএসওএন) ডেটা সংরক্ষণের জন্য দুটি বিখ্যাত ডেটা ফরম্যাট। জেএসওএন এবং এক্সএমএল উভয়ই আমাদের এমনভাবে ডেটা সংরক্ষণ করতে দেয় যা মানুষের পাশাপাশি মেশিন দ্বারাও পাঠযোগ্য। শুরুতে, JSON হল এক ধরনের ডেটা স্ট্রাকচার যা মূলত সার্ভার এবং সফটওয়্যার অ্যাপ্লিকেশনের মধ্যে ডেটা বিনিময় করতে ব্যবহৃত হয়। এটি কী-ভ্যালু পেয়ার হিসেবে ডেটা সংরক্ষণ করে। JSON ডেটার একটি বস্তু তৈরি করে যেখানে কী-মান জোড়াগুলি কোলন (:) এর ভিত্তিতে আলাদা করা হয় এবং একটি সম্পূর্ণ কী-মান জোড়া কমা দ্বারা অন্যদের দ্বারা পৃথক করা হয়।







তদুপরি, এক্সএমএল একটি এইচটিএমএল টাইপ মার্কআপ ভাষা যা ডেটা সংরক্ষণের জন্যও ব্যবহৃত হয়। কিন্তু, XML কোনো প্রকার পূর্বনির্ধারিত ট্যাগ প্রদান করে না। আমরা আমাদের নিজস্ব ট্যাগ তৈরি করতে পারি এবং তথ্য সংরক্ষণ করতে পারি। আমরা যেমন আলোচনা করেছি, JSON এবং XML উভয়ই সার্ভার এবং সফ্টওয়্যার অ্যাপ্লিকেশনগুলির মধ্যে ডেটা বিনিময় করতে ব্যবহৃত হয়। যাইহোক, দুটি ডেটা ফরম্যাট কিছুটা ভিন্ন। JSON একটি অবজেক্ট টাইপ ডেটা স্টোরেজ ফরম্যাট, যেখানে XML এর কোন টাইপ নেই। এক্সএমএল ফাইলগুলি কেবল স্ট্রিং ফর্ম্যাটে ডেটা সঞ্চয় করে এবং JSON ফাইলের চেয়ে ভারী। যেখানে JSON ফাইলগুলি স্ট্রিং, অ্যারে, সংখ্যা ভাসমান-বিন্দু সংখ্যা এবং বুলিয়ান সংরক্ষণ করতে পারে।



এই নিবন্ধটি পাইথন ব্যবহার করে XML থেকে JSON রূপান্তর ব্যাখ্যা করে। পাইথন xmltodict মডিউল XML কে JSON ফরম্যাটে রূপান্তর করতে ব্যবহৃত হয়।



Xmltodict মডিউল ইনস্টলেশন

XML কে JSON এ রূপান্তরিত করার আগে, আমাদের xmltodict মডিউল ইনস্টল করতে হবে। Xmltodict মডিউলটি পাইথন ইনডেক্স প্যাকেজ (পিপ) ​​ব্যবহার করে ইনস্টল করা যায় এবং এটি পাইথন 2 এবং 3 এ ইনস্টল করা যায়।





পিপ ইনস্টল xmltodict

যদি আপনি pip3 ব্যবহার করেন, তাহলে xmltodict মডিউল ইনস্টল করতে নিম্নলিখিত কমান্ডটি চালান:

pip3 xmltodict ইনস্টল করুন



ডেবিয়ান ভিত্তিক সিস্টেমের ক্ষেত্রে, xmltodict মডিউল ইনস্টল করার জন্য নিম্নলিখিত কমান্ডটি চালান:

sudo apt python-xmltodict ইনস্টল করুন

উপরের নির্দেশটি পাইথন 2 এর জন্য উপযুক্ত। পাইথন 3 সংস্করণের ক্ষেত্রে, নিম্নলিখিত কমান্ডটি চালান:

sudo apt python3-xmltodict ইনস্টল করুন

XML থেকে JSON রূপান্তর

এখন XML ডেটা JSON ফরম্যাটে রূপান্তরিত করা যাক। আমরা এই রূপান্তরের জন্য xmltodict এবং JSON মডিউল ব্যবহার করব। জসন একটি অন্তর্নির্মিত পাইথন মডিউল। অতএব, এগুলি ইনস্টল করার প্রয়োজনীয়তা বাদ দেওয়া হয়েছে। Xmltodict.parse () ফাংশন এক্সএমএল ডেটাকে পাইথন ডিকশনারিতে রূপান্তর করে। তারপর, json.dumps () ফাংশন রূপান্তরিত অভিধান বস্তুকে একটি যুক্তি হিসেবে নেয় এবং আরও JSON ফরম্যাটে রূপান্তর করে। সুতরাং এটি একটি দুই ধাপের প্রক্রিয়া:

প্রথমে আমাদের xmltodict.parse () ফাংশন ব্যবহার করে XML কে Python dictionary অবজেক্টে রূপান্তর করতে হবে।

দ্বিতীয়ত, আমরা পাইথন অভিধান বস্তুকে json.dumps () ফাংশন ব্যবহার করে JSON ফর্ম্যাটে রূপান্তর করি। Json.dumps () ফাংশনে, ইন্ডেন্ট প্রপার্টি ডেটার মধ্যে স্পেস যোগ করতে ব্যবহৃত হয়।

#মডিউল আমদানি করা
আমদানিxmltodict
আমদানিjson
#xml ঘোষণা করা হচ্ছে
my_xml= '' '



মারাইসের বাগান
3
ইন্টারনেট
সত্য


2
গোল্ডেন টিউলিপ লিটল প্যালেস
4

ইন্টারনেট
জিম
পার্কিং
রেঁস্তোরা

মিথ্যা


'' '

#পাইথন অভিধানে xml আবৃত করা
dict_data=xmltodict।বিশ্লেষণ(my_xml)
#জসনকে আবৃত করা
json_data=jsonডাম্প(dict_data,ইন্ডেন্ট=2)
ছাপা(json_data)

আউটপুট

আউটপুট দেখায় যে XML সফলভাবে JSON ফরম্যাটে রূপান্তরিত হয়েছে।

XML ফাইল থেকে JSON ফাইল রূপান্তর

XML ফাইলের ডেটা JSON ফাইলে রূপান্তর এবং সংরক্ষণ করা যায়। আসুন এক্সএমএল ফাইলটি খুলি, এক্সএমএল ডেটাকে জেএসওএন রূপান্তর করুন এবং এটি একটি জেএসওএন ফাইলে সংরক্ষণ করুন।

এক্সএমএল ফাইলটি নিম্নরূপ।

#মডিউল আমদানি করা
আমদানিjson
আমদানিxmltodict
# xml ফাইল খুলছে
সঙ্গে খোলা('hotel.xml','আর') হিসাবেxmlfileObj:
#এক্সএমএল ডেটা ডিকশনারিতে রূপান্তর করা
data_dict=xmltodict।বিশ্লেষণ(xmlfileObj।পড়ুন())
xmlfileObj।বন্ধ()
#অভিধান বস্তু ব্যবহার করে JSON বস্তু তৈরি করা
jsonObj=jsonডাম্প(data_dict)

#json ফাইলে json ডেটা সংরক্ষণ করা
সঙ্গে খোলা('hotel.json', 'ভিতরে') হিসাবেjsonfileObj:
jsonfileObj।লিখুন(jsonObj)
jsonfileObj।বন্ধ()

আউটপুট

পাইথন দোভাষী কোন ত্রুটি দেখায় না; এর মানে হল যে JSON ডেটা সফলভাবে একটি .json ফাইলে সংরক্ষণ করা হয়েছে।

উপসংহার

XML এবং JSON ডেটা সংরক্ষণের জন্য দুটি জনপ্রিয় ডেটা ফরম্যাট। XML ডেটা xmltodict এবং JSON মডিউল ব্যবহার করে JSON ফরম্যাটে রূপান্তরিত হতে পারে। এই নিবন্ধটি উদাহরণ সহ XML থেকে JSON ডেটা রূপান্তর ব্যাখ্যা করে।