Netscape কুকি থেকে JSON: কীভাবে রূপান্তর ও X কুকি ইমপোর্ট করবেন
Digital Account Market
· সর্বশেষ হালনাগাদ:
আপনার কাছে একটি cookies.txt ফাইল আছে, কিন্তু যে এক্সটেনশন বা অটোমেশন টুল ব্যবহার করতে চান সেটি শুধু JSON ফরম্যাটের কুকি অ্যারে গ্রহণ করে। ফাইলের প্রতিটি কলামের অর্থ জানা থাকলে Netscape কুকি JSON-এ রূপান্তর করা ছোট একটি কাজ, আর কোন লাইনগুলো পড়া যায়নি তা ঠিকঠাক জানিয়ে দেয় এমন কনভার্টার ব্যবহার করলে কাজটি সেকেন্ডেই শেষ হয়।
এই গাইডে Netscape কুকি ফাইলের ফরম্যাট ব্যাখ্যা করা হয়েছে, JSON অংশটি দেখতে কেমন তা দেখানো হয়েছে, বিনামূল্যের রূপান্তর টুলটি ধাপে ধাপে দেখানো হয়েছে, তারপর ফলাফল কুকি এডিটরে ইমপোর্ট করা এবং X সেশন সত্যিই কাজ করছে কি না তা যাচাই করার পদ্ধতি আছে। বেশির ভাগ ব্যর্থতার পেছনের হাতে-গোনা পেস্ট ভুল এবং কোনো টুল JSON-এর বদলে Base64 চাইলে কী করবেন তাও জানতে পারবেন।
Netscape কুকি থেকে JSON: Tab দিয়ে আলাদা সাতটি কলাম
Netscape কুকি ফাইল সাধারণ টেক্সট, প্রতি লাইনে একটি কুকি। প্রতিটি লাইনে সাতটি ফিল্ড থাকে, যা একটিমাত্র Tab অক্ষর দিয়ে আলাদা করা এবং সবসময় একই ক্রমে সাজানো। Curl, wget এবং ব্রাউজারের বেশির ভাগ কুকি-এক্সপোর্ট এক্সটেনশন এই বিন্যাসেই লেখে।
- ডোমেইন (Domain): কুকিটি যেখানে প্রযোজ্য, যেমন .x.com। শুরুতে ডট থাকলে সাবডোমেইনও অন্তর্ভুক্ত।
- সাবডোমেইন ফ্ল্যাগ: TRUE বা FALSE, যা বলে সাবডোমেইনও কুকিটি পেতে পারে কি না।
- পাথ (Path): সাধারণত শুধু একটি স্ল্যাশ, অর্থাৎ পুরো সাইট।
- Secure: কুকি শুধু HTTPS-এ পাঠানো হলে TRUE।
- মেয়াদ শেষ: সেকেন্ডে Unix টাইমস্ট্যাম্প। শূন্য মানে সেশন কুকি, যা ব্রাউজার বন্ধ হলেই শেষ হয়।
- নাম: কুকির নাম, যেমন auth_token বা ct0।
- মান: কুকির আসল মান, যেটি গোপন অংশ।
দুটি বিশেষ ক্ষেত্র প্রায়ই দেখা যায়। হ্যাশ চিহ্ন দিয়ে শুরু হওয়া লাইনগুলো মন্তব্য এবং উপেক্ষা করা হয়, তবে একটি ব্যতিক্রম আছে: #HttpOnly_ প্রিফিক্স দিয়ে শুরু হওয়া লাইনটি আসল কুকি, যার ডোমেইন প্রিফিক্সের পরে আসে এবং সেটি HTTP-only হিসেবে চিহ্নিত। কিছু এক্সপোর্টার শেষ মানটি ফাঁকা রাখে, তাই ছয় ফিল্ডের সারিও সম্ভব এবং তা বৈধ।
এক্সটেনশনগুলো যে JSON কুকি ফরম্যাট আশা করে
JSON কুকি ইমপোর্ট সাধারণত অবজেক্টের অ্যারে হয়: প্রতি কুকির জন্য একটি অবজেক্ট এবং প্রতিটি ফিল্ডের জন্য একটি কী। এই সাইটের বিনামূল্যের কনভার্টার domain, includeSubdomains, path, secure, expires, name, value ও httpOnly নামে কী তৈরি করে। এটি সাতটি কলামের প্রতিফলন, সঙ্গে HTTP-only প্রিফিক্সের জন্য একটি ফ্ল্যাগ।
মনে রাখুন, এক্সটেনশনগুলো পুরোপুরি এক রকম নয়। ব্রাউজার এক্সটেনশনের API প্রায়ই মেয়াদের ফিল্ডকে expires-এর বদলে expirationDate বলে, আর কিছু এক্সটেনশন hostOnly বা sameSite-এর মতো কী যোগ করে। বড় ব্যাচ সরানোর আগে যে এক্সটেনশনে ইমপোর্ট করবেন সেখান থেকে একটি কুকি এক্সপোর্ট করুন এবং তার কী-র নামগুলো কনভার্টারের আউটপুটের সঙ্গে মিলিয়ে দেখুন। নাম আলাদা হলে কী-র নামে দ্রুত খুঁজে-বদলানোই সাধারণত সমাধান।
বিনামূল্যের টুলে cookies.txt থেকে JSON রূপান্তর
সবচেয়ে দ্রুত পথ হলো Netscape কুকি থেকে JSON টুল। এটি আপনার ব্রাউজারেই চলে, তাই পেস্ট করা টেক্সট সার্ভারে পাঠানো বা সেখানে সংরক্ষণ করা হয় না। তবু বিষয়বস্তুকে পাসওয়ার্ডের মতো গোপন রাখুন, কারণ কুকির মান সক্রিয় সেশনের ক্রেডেনশিয়াল।
- মন্তব্যের লাইনসহ পুরো cookies.txt পেস্ট করুন। আগে কিছু পরিষ্কার করার দরকার নেই।
- তিনটি কাউন্টার দেখুন: বৈধ কুকি, ত্রুটিপূর্ণ লাইন এবং বাদ দেওয়া লাইন। বাদ দেওয়া লাইন মানে মন্তব্য ও ফাঁকা সারি, যা স্বাভাবিক।
- ত্রুটিপূর্ণ লাইন দেখা গেলে অপাঠ্য লাইনের তালিকা খুলুন। প্রতিটি এন্ট্রিতে লাইন নম্বর ও কারণ থাকে।
- বৈধ কুকির সংখ্যা আপনার প্রত্যাশার সঙ্গে মিললে JSON তালিকা কপি করুন।
কী ধরনের ফাইল পেয়েছেন নিশ্চিত না হলে আগে কয়েকটি লাইন ফরম্যাট শনাক্তকারী-তে পেস্ট করুন। কোলন দিয়ে আলাদা অ্যাকাউন্ট লাইনের ডেলিভারি ফাইল আর Tab দিয়ে আলাদা কুকি ফাইল এক জিনিস নয়, এবং ফরম্যাট টুল ব্যবহারের আগে ডেলিভারি পাওয়া ফাইলের গঠন যাচাই নিয়ে আমাদের গাইডে দুটি আলাদা করার উপায় দেওয়া আছে।
JSON কুকি এডিটরে ইমপোর্ট করে সেশন যাচাই
JSON হাতে এলে এই কাজের জন্য ব্যবহৃত ব্রাউজার প্রোফাইলে কুকি এডিটর এক্সটেনশনে সেটি ইমপোর্ট করুন।
- আগে ওই প্রোফাইলে x.com খুলুন, যাতে এক্সটেনশন কুকিগুলো বসানোর মতো একটি পেজ ও ডোমেইন পায়।
- এক্সটেনশনের ইমপোর্ট অপশন খুলে JSON অ্যারে পেস্ট করুন।
- পেজ রিলোড করে সাইন-ইন স্ক্রিনের বদলে লগইন করা হোম টাইমলাইন দেখা যাচ্ছে কি না দেখুন।
X লগইনের জন্য সবচেয়ে গুরুত্বপূর্ণ কুকি হলো auth_token, যা সেশন বহন করে, এবং ct0, সাইট অনুরোধের জন্য যে সহযোগী টোকেন ব্যবহার করে। এগুলোর ডোমেইন .x.com (অথবা আপনার এক্সপোর্টে থাকলে পুরোনো .twitter.com), পাথ স্ল্যাশ এবং মেয়াদ ভবিষ্যতের তারিখ কি না নিশ্চিত করুন। মেয়াদোত্তীর্ণ টাইমস্ট্যাম্পই অন্যভাবে নিখুঁত ইমপোর্ট ব্যর্থ হওয়ার সবচেয়ে সাধারণ কারণ। টোকেনভিত্তিক সাইন-ইনের পুরো চিত্র জানতে auth token দিয়ে Twitter-এ লগইন করার উপায় পড়ুন।
সাধারণ রূপান্তর ত্রুটি: Tab, #HttpOnly_ লাইন ও মন্তব্য
বেশির ভাগ ব্যর্থতা হাতে-গোনা কয়েকটি ভুল থেকে আসে, এবং কনভার্টারের ত্রুটির তালিকা সরাসরি সেগুলোর দিকেই ইঙ্গিত করে।
- Tab স্পেস হয়ে গেছে: চ্যাট উইন্ডো, ওয়ার্ড প্রসেসর বা কিছু ওয়েবপেজ থেকে কপি করলে Tab অক্ষর স্পেসে বদলে যেতে পারে। তখন টুল সাতটির বদলে একটিমাত্র লম্বা ফিল্ড দেখে। বরং সাধারণ টেক্সট এডিটরে মূল ফাইল থেকে কপি করুন।
- ফিল্ডের সংখ্যা ভুল: প্রতিটি সারিতে ছয় বা সাতটি ফিল্ড থাকতে হবে। মানের ভেতরে বাড়তি স্পেস বা একটি কলাম বাদ পড়া সারি লাইন নম্বরসহ জানানো হয়।
- ডোমেইন বা নাম ফাঁকা: ডোমেইন বা কুকির নাম ফাঁকা সারি ব্যবহার করা যায় না, তাই টুল আন্দাজ না করে সেটি তালিকাভুক্ত করে।
- মেয়াদ সংখ্যা নয়: পঞ্চম ফিল্ডে অবশ্যই অঙ্ক থাকতে হবে। লেখা আকারে তারিখ বা কোনো বাড়তি অক্ষর থাকলে তা বাতিল হয়।
- মন্তব্য নিয়ে বিভ্রান্তি: হ্যাশ দিয়ে শুরু হওয়া লাইন বাদ যায়, কিন্তু #HttpOnly_ লাইনগুলো আসল কুকি। গণনা প্রত্যাশার চেয়ে কম হলে আগের কোনো পরিষ্কার করার ধাপে সেগুলো মুছে গেছে কি না দেখুন।
উৎস ঠিক করার পর আবার পেস্ট করুন এবং বৈধ কুকির সংখ্যা প্রত্যাশিত সংখ্যার সঙ্গে মেলান। যে কনভার্টার প্রতিটি অপাঠ্য লাইনের কথা জানায়, সেটি চুপচাপ ফেলে দেওয়া কনভার্টারের চেয়ে ভালো।
টুল চাইলে Base64-এ রূপান্তর
কিছু প্যানেল ও ইমপোর্ট ফর্ম পড়ার উপযোগী JSON-এর বদলে কুকি অ্যারেকে একটি Base64 স্ট্রিং হিসেবে চায়। JSON-টি JSON থেকে Base64 টুল-এ পেস্ট করুন এবং গন্তব্য ইনডেন্টেশন না চাইলে সংক্ষিপ্ত এক-লাইনের আউটপুট বেছে নিন। বিদ্যমান Base64 স্ট্রিং পরীক্ষা বা ডিবাগ করতে উল্টো দিকের পদ্ধতিটি Base64 কুকি ডেটা আবার JSON-এ ডিকোড করা লেখায় আছে।
আপনার মূল cookies.txt-কে উৎস হিসেবে রেখে দিন, কারণ JSON ও Base64 সংস্করণ সেখান থেকে সবসময় আবার তৈরি করা যায়। কাজের ধারায় অ্যাকাউন্ট যোগ করতে প্রস্তুত হলে পুরোনো অ্যাকাউন্টের ক্যাটাগরি দেখুন, তারপর উপরের বিনামূল্যের টুল দিয়ে আপনার টুলের প্রয়োজনীয় ফরম্যাট তৈরি করে নিন।
সচরাচর জিজ্ঞাসিত প্রশ্ন
Netscape ও JSON কুকি ফরম্যাটের মধ্যে পার্থক্য কী?
Netscape ফাইল সাধারণ টেক্সট, যার প্রতি লাইনে Tab দিয়ে আলাদা সাতটি কলাম থাকে। JSON একটি কাঠামোবদ্ধ অ্যারে, যেখানে প্রতিটি কুকি নামযুক্ত কী-সহ একটি অবজেক্ট। দুটিতে একই তথ্য থাকে, তাই এক থেকে অন্যটিতে রূপান্তরে বিন্যাস বদলায়, কুকির ডেটা নয়।
আমার পেস্ট করা cookies.txt শূন্য কুকি দেখাচ্ছে কেন?
সাধারণত কপি করার সময় Tab স্পেসে বদলে গেছে, ফলে প্রতিটি লাইনে ফিল্ডের সংখ্যা ভুল। সাধারণ টেক্সট এডিটরে মূল ফাইল থেকে সরাসরি কপি করে আবার পেস্ট করুন। শুধু মন্তব্য বা ফাঁকা লাইনের ফাইলও শূন্য কুকি দেয়।
#HttpOnly_ দিয়ে শুরু হওয়া লাইন কি মন্তব্য, নাকি আসল কুকি?
এটি আসল কুকি। প্রিফিক্স শুধু একে HTTP-only হিসেবে চিহ্নিত করে, আর ডোমেইন তার ঠিক পরেই শুরু হয়। হ্যাশ দিয়ে শুরু হওয়া সাধারণ লাইনগুলো মন্তব্য এবং বাদ যায়।
X লগইনের জন্য কোন কুকি ফিল্ডগুলো সবচেয়ে গুরুত্বপূর্ণ?
সবচেয়ে গুরুত্বপূর্ণ auth_token ও ct0-এর নাম এবং মান, সঙ্গে .x.com-এর মতো সঠিক ডোমেইন, স্ল্যাশ পাথ এবং যে মেয়াদ শেষ হয়নি এমন তারিখ। এগুলো ঠিক থাকলে সাবডোমেইন ফ্ল্যাগের মতো ফিল্ড থেকে সমস্যা খুব কমই হয়।
পরে কি JSON আবার Netscape বা Base64-এ রূপান্তর করা যায়?
JSON থেকে Base64 ও Base64 থেকে JSON টুল দিয়ে Base64 দুই দিকেই কাজ করে। সাইটে JSON থেকে Netscape কনভার্টার নেই, তাই ওই ফরম্যাট আবার লাগতে পারে মনে হলে মূল cookies.txt রেখে দিন।

