পাইথন কুইকস্টার্ট

এই কুইকস্টার্ট গাইডটি ব্যাখ্যা করে কিভাবে একটি সহজ পাইথন কমান্ড-লাইন অ্যাপ্লিকেশন সেট আপ করতে হয় যা ইউটিউব ডেটা এপিআই-তে অনুরোধ পাঠায়। এই কুইকস্টার্টটি আসলে দুটি এপিআই অনুরোধ কীভাবে করতে হয় তা ব্যাখ্যা করে:

  1. আপনি গুগল ডেভেলপারস ইউটিউব চ্যানেল সম্পর্কিত তথ্য পুনরুদ্ধার করতে একটি এপিআই কী ব্যবহার করবেন, যা আপনার অ্যাপ্লিকেশনকে শনাক্ত করে।
  2. আপনি আপনার নিজের ইউটিউব চ্যানেল সম্পর্কিত তথ্য সংগ্রহের জন্য একটি অনুমোদিত অনুরোধ জমা দিতে একটি OAuth 2.0 ক্লায়েন্ট আইডি ব্যবহার করবেন।

পূর্বশর্ত

এই কুইকস্টার্টটি চালানোর জন্য আপনার প্রয়োজন হবে:

  • পাইথন ২.৭ অথবা পাইথন ৩.৫+

  • pip প্যাকেজ ম্যানেজমেন্ট টুল

  • পাইথনের জন্য গুগল এপিআই ক্লায়েন্ট লাইব্রেরি:

    pip install --upgrade google-api-python-client
    
  • ব্যবহারকারীর অনুমোদনের জন্য google-auth-oauthlib এবং google-auth-httplib2 লাইব্রেরিগুলো ব্যবহৃত হয়।

    pip install --upgrade google-auth-oauthlib google-auth-httplib2
    

ধাপ ১: আপনার প্রজেক্ট এবং ক্রেডেনশিয়াল সেট আপ করুন।

ক্লাউড কনসোলে একটি প্রজেক্ট তৈরি করুন বা নির্বাচন করুন। আপনার প্রজেক্টের জন্য ক্লাউড কনসোলে নিম্নলিখিত কাজগুলো সম্পন্ন করুন:

  1. লাইব্রেরি প্যানেলে , YouTube Data API v3 অনুসন্ধান করুন। সেই API-এর তালিকায় ক্লিক করুন এবং নিশ্চিত করুন যে API-টি আপনার প্রোজেক্টের জন্য সক্রিয় করা আছে।

  2. ক্রেডেনশিয়াল প্যানেলে দুটি ক্রেডেনশিয়াল তৈরি করুন:

    1. একটি এপিআই কী তৈরি করুন। ব্যবহারকারীর অনুমোদনের প্রয়োজন নেই এমন এপিআই অনুরোধগুলি করার জন্য আপনি এপিআই কী ব্যবহার করবেন। উদাহরণস্বরূপ, একটি পাবলিক ইউটিউব চ্যানেল সম্পর্কে তথ্য পেতে আপনার ব্যবহারকারীর অনুমোদনের প্রয়োজন নেই।

    2. একটি OAuth 2.0 ক্লায়েন্ট আইডি তৈরি করুন এবং অ্যাপ্লিকেশন টাইপটি ' ডেস্কটপ অ্যাপ' হিসেবে সেট করুন। যেসব অনুরোধের জন্য ব্যবহারকারীর অনুমোদনের প্রয়োজন হয়, সেগুলোর জন্য আপনাকে OAuth 2.0 ক্রেডেনশিয়াল ব্যবহার করতে হবে। উদাহরণস্বরূপ, বর্তমানে প্রমাণীকৃত ব্যবহারকারীর ইউটিউব চ্যানেল সম্পর্কিত তথ্য পুনরুদ্ধার করতে আপনার ব্যবহারকারীর অনুমোদন প্রয়োজন।

      আপনার OAuth 2.0 ক্রেডেনশিয়াল সম্বলিত JSON ফাইলটি ডাউনলোড করুন। ফাইলটির নাম client_secret_CLIENTID.json এর মতো, যেখানে CLIENTID হলো আপনার প্রোজেক্টের ক্লায়েন্ট আইডি।

ধাপ ২: নমুনাটি সেট আপ করুন এবং চালান

GoogleDevelopers ইউটিউব চ্যানেল সম্পর্কে তথ্য সংগ্রহের জন্য নমুনা কোড পেতে সাইড প্যানেলে থাকা এপিআই এক্সপ্লোরার উইজেটটি ব্যবহার করুন। এই অনুরোধটি আপনার অ্যাপ্লিকেশন শনাক্ত করতে একটি এপিআই কী ব্যবহার করে এবং এর জন্য নমুনাটি চালনাকারী ব্যবহারকারীর অনুমোদন বা কোনো বিশেষ অনুমতির প্রয়োজন হয় না।

  1. API-এর channels.list মেথডের ডকুমেন্টেশনটি খুলুন।
  2. সেই পৃষ্ঠার "সাধারণ ব্যবহারের ক্ষেত্রসমূহ" বিভাগে একটি সারণি রয়েছে, যেখানে পদ্ধতিটি ব্যবহারের কয়েকটি সাধারণ উপায় ব্যাখ্যা করা হয়েছে। সারণির প্রথম তালিকাটি চ্যানেল আইডি অনুসারে ফলাফল তালিকাভুক্ত করার জন্য।

    পূর্ণস্ক্রিন এপিআই এক্সপ্লোরারটি খুলতে ও তাতে তথ্য যোগ করতে প্রথম তালিকার কোড প্রতীকটিতে ক্লিক করুন।

    যে ছবিটি channels.list ডকুমেন্টেশনের ব্যবহারের ক্ষেত্রগুলো তালিকাভুক্তকারী টেবিলে কোড প্রতীক লিঙ্কের অবস্থান চিহ্নিত করে। সেই ছবির alt টেক্সট ছবিটিকে একটি কোড প্রতীক হিসেবে চিহ্নিত করে এবং সেই লিঙ্কের সাথে যুক্ত ব্যবহারের ক্ষেত্রটি নির্দিষ্ট করে।

  3. ফুলস্ক্রিন এপিআই এক্সপ্লোরারের বাম দিকে নিম্নলিখিত বিষয়গুলো দেখানো হয়:

    1. রিকোয়েস্ট প্যারামিটারস হেডারের নিচে, মেথডটি যে প্যারামিটারগুলো সাপোর্ট করে তার একটি তালিকা রয়েছে। part এবং id প্যারামিটারের ভ্যালু অবশ্যই সেট করতে হবে। id প্যারামিটারের ভ্যালু, UC_x5XG1OV2P6uZZ5FSM9Ttw , হলো গুগলডেভেলপারস ইউটিউব চ্যানেলের আইডি।

    2. প্যারামিটারগুলোর নিচে ক্রেডেনশিয়ালস (Credentials ) নামে একটি সেকশন আছে। সেই সেকশনের পুলডাউন মেনুতে এপিআই কী (API key) ভ্যালুটি দেখানো উচিত। এপিআই এক্সপ্লোরার (APIs Explorer) কাজ শুরু করা সহজ করার জন্য ডিফল্টভাবে ডেমো ক্রেডেনশিয়ালস ব্যবহার করে। কিন্তু স্যাম্পলটি লোকালি চালানোর জন্য আপনাকে আপনার নিজের এপিআই কী (API key) ব্যবহার করতে হবে।

      ছবিটিতে ফুলস্ক্রিন এপিআই এক্সপ্লোরার-এর 'ক্রেডেনশিয়ালস' এবং পুলডাউন মেনুটি দেখানো হয়েছে, যেখানে 'এপিআই কী' অপশনটি নির্বাচিত রয়েছে।

  4. ফুলস্ক্রিন এপিআই এক্সপ্লোরারের ডান দিকে বিভিন্ন ভাষার কোড স্যাম্পলসহ ট্যাব দেখা যায়। পাইথন ট্যাবটি নির্বাচন করুন।

  5. কোড নমুনাটি কপি করে example.py নামের একটি ফাইলে সংরক্ষণ করুন।

  6. আপনার ডাউনলোড করা নমুনাটিতে, YOUR_API_KEY স্ট্রিংটি খুঁজুন এবং এই কুইকস্টার্টের ধাপ ১-এ আপনার তৈরি করা API কী-টি দিয়ে সেটি প্রতিস্থাপন করুন।

  7. কমান্ড লাইন থেকে নমুনাটি চালান। আপনার ওয়ার্কিং ডিরেক্টরিতে, চালান:

    python example.py

  8. নমুনাটি অনুরোধটি কার্যকর করবে এবং প্রতিক্রিয়াটি STDOUT এ প্রিন্ট করবে।

ধাপ ৩: একটি অনুমোদিত অনুরোধ চালান

এই ধাপে, আপনি আপনার কোডের নমুনাটি এমনভাবে পরিবর্তন করবেন যাতে এটি GoogleDevelopers ইউটিউব চ্যানেলের তথ্য সংগ্রহের পরিবর্তে আপনার নিজের ইউটিউব চ্যানেলের তথ্য সংগ্রহ করে। এই অনুরোধটির জন্য ব্যবহারকারীর অনুমোদনের প্রয়োজন হবে।

  1. API-এর channels.list মেথডের ডকুমেন্টেশনে ফিরে যান।

  2. "সাধারণ ব্যবহারের ক্ষেত্র" বিভাগে, টেবিলের তৃতীয় তালিকার কোড প্রতীকটিতে ক্লিক করুন। সেই ব্যবহারের ক্ষেত্রটি হলো "আমার চ্যানেল"-এর জন্য list মেথডটি কল করা।

  3. আবার, ফুলস্ক্রিন এপিআই এক্সপ্লোরারের বাম দিকে, আপনি প্যারামিটারগুলির একটি তালিকার পরে ক্রেডেনশিয়ালস বিভাগটি দেখতে পাবেন। তবে, যে উদাহরণে আপনি গুগলডেভেলপারস চ্যানেল সম্পর্কে তথ্য সংগ্রহ করেছিলেন, তার থেকে দুটি পরিবর্তন রয়েছে:

    1. প্যারামিটার সেকশনে, id প্যারামিটারের মান সেট করার পরিবর্তে mine প্যারামিটারের মান true সেট করতে হবে। এটি এপিআই সার্ভারকে বর্তমানে অথেনটিকেটেড ব্যবহারকারীর চ্যানেল সম্পর্কে তথ্য সংগ্রহ করতে নির্দেশ দেয়।

    2. ক্রেডেনশিয়ালস সেকশনে, পুলডাউন মেনু থেকে গুগল ওঅথ ২.০ (Google OAuth 2.0 ) অপশনটি সিলেক্ট করতে হবে।

      এছাড়াও, আপনি যদি 'Show scopes' লিঙ্কে ক্লিক করেন, তাহলে https://www.googleapis.com/auth/youtube.readonly স্কোপটি চেক করা উচিত।

      ছবিটিতে ফুলস্ক্রিন এপিআই এক্সপ্লোরারে স্কোপগুলো দেখানো হয়েছে এবং 'Google OAuth 2.0' ক্রেডেনশিয়াল ব্যবহারের অপশনটি নির্বাচিত রয়েছে।

  4. আগের উদাহরণের মতোই, Python ট্যাবটি নির্বাচন করুন, কোডের নমুনাটি কপি করুন এবং example.py নামে সংরক্ষণ করুন।

    কোডে, YOUR_CLIENT_SECRET_FILE.json স্ট্রিংটি খুঁজুন এবং এই কুইকস্টার্টের ধাপ ১-এ ডাউনলোড করা ক্লায়েন্ট সিক্রেট ফাইলের লোকেশন দিয়ে এটি প্রতিস্থাপন করুন।

  5. কমান্ড লাইন থেকে নমুনাটি চালান। আপনার ওয়ার্কিং ডিরেক্টরিতে, চালান:

    python example.py

  6. কনসোল থেকে URL-টি কপি করে আপনার ব্রাউজারে খুলুন।

    আপনি যদি আগে থেকেই আপনার গুগল অ্যাকাউন্টে লগ ইন করা না থাকেন, তাহলে আপনাকে লগ ইন করতে বলা হবে। আপনি যদি একাধিক গুগল অ্যাকাউন্টে লগ ইন করে থাকেন, তাহলে অনুমোদনের জন্য আপনাকে একটি অ্যাকাউন্ট বেছে নিতে বলা হবে।

  7. আপনার কোড নমুনায় নির্দিষ্ট করা স্কোপগুলিতে আপনার অ্যাপ্লিকেশনকে অ্যাক্সেস দেওয়ার জন্য বোতামটি ক্লিক করুন।

  8. ব্রাউজার থেকে অথোরাইজেশন কোডটি কপি করে আপনার টার্মিনালে পেস্ট করুন। এরপর আপনি অথোরাইজেশন প্রক্রিয়ার জন্য ব্যবহৃত ব্রাউজার ট্যাবটি বন্ধ করে দিতে পারেন।

    এপিআই প্রতিক্রিয়াটি আবার STDOUT এ প্রিন্ট করা উচিত।

আরও পড়ুন