হ্যালো অ্যানালিটিক্স এপিআই: সার্ভিস অ্যাকাউন্টের জন্য পাইথন কুইকস্টার্ট

এই টিউটোরিয়ালটি Google Analytics অ্যাকাউন্ট অ্যাক্সেস করতে, অ্যানালিটিক্স API গুলিকে জিজ্ঞাসা করতে, API প্রতিক্রিয়াগুলি পরিচালনা করতে এবং ফলাফলগুলি আউটপুট করার জন্য প্রয়োজনীয় পদক্ষেপগুলির মধ্য দিয়ে চলে। এই টিউটোরিয়ালে Core Reporting API v3.0 , Management API v3.0 , এবং OAuth2.0 ব্যবহার করা হয়েছে৷

ধাপ 1: Analytics API সক্ষম করুন

Google Analytics API ব্যবহার শুরু করার জন্য, আপনাকে প্রথমে সেটআপ টুল ব্যবহার করতে হবে, যা আপনাকে Google API কনসোলে একটি প্রকল্প তৈরি, API সক্ষম করা এবং শংসাপত্র তৈরি করার মাধ্যমে গাইড করে৷

একটি ক্লায়েন্ট আইডি তৈরি করুন

  1. পরিষেবা অ্যাকাউন্ট পৃষ্ঠা খুলুন। অনুরোধ করা হলে, একটি প্রকল্প নির্বাচন করুন.
  2. পরিষেবা অ্যাকাউন্ট তৈরি ক্লিক করুন, পরিষেবা অ্যাকাউন্টের জন্য একটি নাম এবং বিবরণ লিখুন। আপনি ডিফল্ট পরিষেবা অ্যাকাউন্ট আইডি ব্যবহার করতে পারেন, বা একটি ভিন্ন, অনন্য একটি চয়ন করতে পারেন৷ হয়ে গেলে Create এ ক্লিক করুন।
  3. নিম্নলিখিত পরিষেবা অ্যাকাউন্ট অনুমতি (ঐচ্ছিক) বিভাগ প্রয়োজন নেই। অবিরত ক্লিক করুন.
  4. ব্যবহারকারীদের এই পরিষেবা অ্যাকাউন্টের স্ক্রিনে অ্যাক্সেস মঞ্জুর করুন , কী তৈরি করুন বিভাগে নিচে স্ক্রোল করুন। Create key এ ক্লিক করুন।
  5. প্রদর্শিত পার্শ্ব প্যানেলে, আপনার কীটির বিন্যাস নির্বাচন করুন: JSON প্রস্তাবিত৷
  6. তৈরি করুন ক্লিক করুন। আপনার নতুন পাবলিক/প্রাইভেট কী জোড়া তৈরি এবং আপনার মেশিনে ডাউনলোড করা হয়েছে; এটি এই কীটির একমাত্র অনুলিপি হিসাবে কাজ করে। কীভাবে এটি নিরাপদে সঞ্চয় করা যায় সে সম্পর্কে তথ্যের জন্য, পরিষেবা অ্যাকাউন্ট কীগুলি পরিচালনা করা দেখুন।
  7. আপনার কম্পিউটার ডায়ালগে সংরক্ষিত ব্যক্তিগত কী- তে ক্লোজ ক্লিক করুন, তারপর আপনার পরিষেবা অ্যাকাউন্টের টেবিলে ফিরে যেতে সম্পন্ন ক্লিক করুন।

Google Analytics অ্যাকাউন্টে পরিষেবা অ্যাকাউন্ট যোগ করুন

নতুন তৈরি পরিষেবা অ্যাকাউন্টে একটি ইমেল ঠিকানা থাকবে, <projectId>-<uniqueId>@developer.gserviceaccount.com ; আপনি API-এর মাধ্যমে অ্যাক্সেস করতে চান এমন Google বিশ্লেষণ অ্যাকাউন্টে একজন ব্যবহারকারী যোগ করতে এই ইমেল ঠিকানাটি ব্যবহার করুন। এই টিউটোরিয়ালের জন্য শুধুমাত্র Read & Analyze অনুমতি প্রয়োজন।

ধাপ 2: Google ক্লায়েন্ট লাইব্রেরি ইনস্টল করুন

আপনি হয় একটি প্যাকেজ ম্যানেজার ব্যবহার করতে পারেন বা পাইথন ক্লায়েন্ট লাইব্রেরি ম্যানুয়ালি ডাউনলোড এবং ইনস্টল করতে পারেন:

পিপ

পাইথন প্যাকেজ ইনস্টল করার জন্য প্রস্তাবিত টুল pip ব্যবহার করুন:

sudo pip install --upgrade google-api-python-client

সেটআপ টুলস

setuptools প্যাকেজে অন্তর্ভুক্ত easy_install টুলটি ব্যবহার করুন:

sudo easy_install --upgrade google-api-python-client

ম্যানুয়াল ইনস্টলেশন

পাইথনের জন্য সর্বশেষ ক্লায়েন্ট লাইব্রেরি ডাউনলোড করুন, কোডটি আনপ্যাক করুন এবং চালান:

sudo python setup.py install

Python সিস্টেমে ইনস্টল করার জন্য আপনাকে সুপার ইউজার ( sudo ) বিশেষাধিকার সহ কমান্ডটি ব্যবহার করতে হতে পারে।

ধাপ 3: নমুনা সেটআপ করুন

আপনাকে HelloAnalytics.py নামে একটি ফাইল তৈরি করতে হবে, যাতে প্রদত্ত নমুনা কোড থাকবে।

  1. HelloAnalytics.py এ নিম্নলিখিত সোর্স কোডটি কপি বা ডাউনলোড করুন
  2. নমুনা কোড হিসাবে একই ডিরেক্টরির মধ্যে পূর্বে ডাউনলোড করা client_secrets.json সরান।
  3. বিকাশকারী কনসোল থেকে উপযুক্ত মানগুলির সাথে key_file_location এর মানগুলি প্রতিস্থাপন করুন।
"""A simple example of how to access the Google Analytics API."""

from apiclient.discovery import build
from oauth2client.service_account import ServiceAccountCredentials


def get_service(api_name, api_version, scopes, key_file_location):
    """Get a service that communicates to a Google API.

    Args:
        api_name: The name of the api to connect to.
        api_version: The api version to connect to.
        scopes: A list auth scopes to authorize for the application.
        key_file_location: The path to a valid service account JSON key file.

    Returns:
        A service that is connected to the specified API.
    """

    credentials = ServiceAccountCredentials.from_json_keyfile_name(
            key_file_location, scopes=scopes)

    # Build the service object.
    service = build(api_name, api_version, credentials=credentials)

    return service


def get_first_profile_id(service):
    # Use the Analytics service object to get the first profile id.

    # Get a list of all Google Analytics accounts for this user
    accounts = service.management().accounts().list().execute()

    if accounts.get('items'):
        # Get the first Google Analytics account.
        account = accounts.get('items')[0].get('id')

        # Get a list of all the properties for the first account.
        properties = service.management().webproperties().list(
                accountId=account).execute()

        if properties.get('items'):
            # Get the first property id.
            property = properties.get('items')[0].get('id')

            # Get a list of all views (profiles) for the first property.
            profiles = service.management().profiles().list(
                    accountId=account,
                    webPropertyId=property).execute()

            if profiles.get('items'):
                # return the first view (profile) id.
                return profiles.get('items')[0].get('id')

    return None


def get_results(service, profile_id):
    # Use the Analytics Service Object to query the Core Reporting API
    # for the number of sessions within the past seven days.
    return service.data().ga().get(
            ids='ga:' + profile_id,
            start_date='7daysAgo',
            end_date='today',
            metrics='ga:sessions').execute()


def print_results(results):
    # Print data nicely for the user.
    if results:
        print 'View (Profile):', results.get('profileInfo').get('profileName')
        print 'Total Sessions:', results.get('rows')[0][0]

    else:
        print 'No results found'


def main():
    # Define the auth scopes to request.
    scope = 'https://www.googleapis.com/auth/analytics.readonly'
    key_file_location = '<REPLACE_WITH_JSON_FILE>'

    # Authenticate and construct service.
    service = get_service(
            api_name='analytics',
            api_version='v3',
            scopes=[scope],
            key_file_location=key_file_location)

    profile_id = get_first_profile_id(service)
    print_results(get_results(service, profile_id))


if __name__ == '__main__':
    main()

ধাপ 4: নমুনা চালান

আপনি অ্যানালিটিক্স এপিআই সক্ষম করার পরে, পাইথনের জন্য Google API ক্লায়েন্ট লাইব্রেরি ইনস্টল করুন এবং নমুনা উত্স কোড সেট আপ করুন নমুনাটি চালানোর জন্য প্রস্তুত৷

ব্যবহার করে নমুনা চালান:

python HelloAnalytics.py

আপনি যখন এই ধাপগুলি শেষ করেন, নমুনাটি অনুমোদিত ব্যবহারকারীর প্রথম Google Analytics ভিউ (প্রোফাইল) এর নাম এবং গত সাত দিনের সেশনের সংখ্যা প্রকাশ করে৷

অনুমোদিত অ্যানালিটিক্স সার্ভিস অবজেক্টের সাহায্যে আপনি এখন ম্যানেজমেন্ট এপিআই রেফারেন্স ডক্সে পাওয়া যেকোন কোড নমুনা চালাতে পারেন। উদাহরণস্বরূপ আপনি accountSummaries.list পদ্ধতি ব্যবহার করতে কোড পরিবর্তন করার চেষ্টা করতে পারেন।

সমস্যা সমাধান

অ্যাট্রিবিউট ত্রুটি: 'মডিউল_সিক্স_মোভস_উরলিব_পার্স' অবজেক্টের কোনো অ্যাট্রিবিউট নেই 'urlparse'

এই ত্রুটিটি ম্যাক ওএসএক্সে ঘটতে পারে যেখানে "ছয়" মডিউলের ডিফল্ট ইনস্টলেশন (এই লাইব্রেরির একটি নির্ভরতা) পিপ ইনস্টল করার আগে লোড করা হয়। সমস্যাটি সমাধান করতে, PYTHONPATH সিস্টেম এনভায়রনমেন্ট ভেরিয়েবলে পিপের ইনস্টল অবস্থান যোগ করুন:

  1. নিম্নলিখিত কমান্ডের সাহায্যে পিপের ইনস্টলেশন অবস্থান নির্ধারণ করুন:

    pip show six | grep "Location:" | cut -d " " -f2
    

  2. উপরে নির্ধারিত মান দিয়ে <pip_install_path> প্রতিস্থাপন করে আপনার ~/.bashrc ফাইলে নিম্নলিখিত লাইনটি যোগ করুন:

    export PYTHONPATH=$PYTHONPATH:<pip_install_path>
    
  3. নিম্নলিখিত কমান্ডটি ব্যবহার করে যেকোনো খোলা টার্মিনাল উইন্ডোতে আপনার ~/.bashrc ফাইলটি পুনরায় লোড করুন:

    source ~/.bashrc