Python কুইকস্টার্ট

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

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

পূর্বশর্ত

এই কুইকস্টার্ট রান করতে, আপনার এগুলি প্রয়োজন:

  • Python 2.7 বা Python 3.5+

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

  • Python-এর জন্য Google API ক্লায়েন্ট লাইব্রেরি:

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

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

ধাপ ১: আপনার প্রোজেক্ট ও ক্রেডেনশিয়াল সেট-আপ করুন

Cloud কনসোলে কোনও প্রোজেক্ট তৈরি করুন বা বেছে নিন। আপনার প্রোজেক্টের জন্য Cloud Console-এ নিম্নলিখিত টাস্ক সম্পূর্ণ করুন:

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

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

    1. API কী তৈরি করুন আপনি API অনুরোধ করার জন্য API কী ব্যবহার করবেন যার জন্য ব্যবহারকারীর অনুমোদনের প্রয়োজন নেই। যেমন, কোনও পাবলিক YouTube চ্যানেল সম্পর্কে তথ্য পেতে, আপনার ব্যবহারকারীর অনুমোদনের প্রয়োজন নেই।

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

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

ধাপ ২: স্যাম্পেল সেট-আপ ও রান করা

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

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

    প্রথম তালিকাভুক্তির জন্য কোড প্রতীকে ক্লিক করে ফুলস্ক্রিন API এক্সপ্লোরার খুলুন ও পূরণ করুন।

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

  3. ফুলস্ক্রিন APIs Explorer-এর বাঁদিকে নিম্নলিখিত তথ্য দেখানো হয়:

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

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

      ফুলস্ক্রিন APIs Explorer-এ 'ক্রেডেনশিয়াল'
এবং 'API কী' বিকল্প বেছে নেওয়া পুলডাউন মেনু দেখানো ছবি।

  4. ফুলস্ক্রিন APIs Explorer-এর ডানদিকে বিভিন্ন ভাষায় কোড স্যাম্পেল সহ ট্যাব দেখানো হয়। Python ট্যাব বেছে নিন।

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

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

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

    python example.py

  8. নমুনা কোডটি অনুরোধ এক্সিকিউট করে STDOUT-এ উত্তর প্রিন্ট করবে।

ধাপ ৩: অনুমোদিত অনুরোধ রান করা

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

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

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

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

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

    2. ক্রেডেনশিয়াল বিভাগে, ড্রপডাউন মেনু থেকে Google OAuth 2.0-এর বিকল্প বেছে নিতে হবে।

      এছাড়াও, আপনি স্কোপ দেখুন লিঙ্কে ক্লিক করলে, https://www.googleapis.com/auth/youtube.readonly স্কোপটি চেক করা থাকতে হবে।

      ফুলস্ক্রিন APIs Explorer-এ স্কোপ দেখানো ছবি এবং 'Google OAuth 2.0' ক্রেডেনশিয়াল বেছে নেওয়ার বিকল্প।

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

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

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

    python example.py

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

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

  7. আপনার কোড স্যাম্পেলে উল্লেখ করা স্কোপে আপনার অ্যাপ্লিকেশনকে অ্যাক্সেস দিতে বোতামে ক্লিক করুন।

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

    API রেসপন্স আবার STDOUT-এ প্রিন্ট করতে হবে।

আরও পড়ুন