नमस्ते Analytics Reporting API v4; सेवा खातों के लिए Python क्विकस्टार्ट

इस ट्यूटोरियल में, Analytics Reporting API v4 को ऐक्सेस करने के ज़रूरी चरणों के बारे में बताया गया है.

1. एपीआई चालू करें

Analytics Reporting API v4 का इस्तेमाल शुरू करने के लिए, सबसे पहले सेटअप टूल का इस्तेमाल करना होगा. इससे आपको Google API कंसोल में प्रोजेक्ट बनाने, एपीआई को चालू करने, और क्रेडेंशियल बनाने के बारे में जानकारी मिलेगी.

क्रेडेंशियल बनाएं

  1. सेवा खाते का पेज खोलें. पूछे जाने पर, प्रोजेक्ट चुनें.
  2. सेवा खाता बनाएं पर क्लिक करें, सेवा खाते का नाम और जानकारी डालें. आप डिफ़ॉल्ट सेवा खाता आईडी इस्तेमाल करें या फिर कोई दूसरा, अलग खाता आईडी चुनें. काम पूरा हो जाने पर, बनाएं पर क्लिक करें.
  3. इसके बाद आने वाले सेवा खाते की अनुमतियां (ज़रूरी नहीं) सेक्शन की ज़रूरत नहीं है. जारी रखें पर क्लिक करें.
  4. उपयोगकर्ताओं को इस खाते का ऐक्सेस दें स्क्रीन पर, नीचे कुंजी बनाएं सेक्शन तक स्क्रोल करें. कुंजी बनाएं पर क्लिक करें.
  5. दिखने वाले साइड पैनल में, अपनी कुंजी का फ़ॉर्मैट चुनें: JSON का सुझाव दिया जाता है.
  6. बनाएं पर क्लिक करें. आपकी नई सार्वजनिक/निजी कुंजी की जोड़ी जनरेट करके आपकी मशीन पर डाउनलोड की जाती है. यह इस कुंजी की अकेली कॉपी की तरह काम करती है. इसे सुरक्षित तौर पर कैसे सेव किया जाए, इसकी जानकारी के लिए, सेवा खाता कुंजियां मैनेज करें देखें.
  7. आपके कंप्यूटर पर सेव की गई निजी कुंजी डायलॉग पर, बंद करें पर क्लिक करें. इसके बाद, अपने सेवा खातों की टेबल पर वापस लौटने के लिए, हो गया पर क्लिक करें.

Google Analytics खाते में सेवा खाता जोड़ें

नए सेवा खाते का ईमेल पता, इससे मिलता-जुलता होगा:

quickstart@PROJECT-ID.iam.gserviceaccount.com

इस ईमेल पते का इस्तेमाल करके, Google Analytics के उस व्यू में कोई उपयोगकर्ता जोड़ें जिसे एपीआई की मदद से ऐक्सेस करना है. इस ट्यूटोरियल के लिए, सिर्फ़ पढ़ें और विश्लेषण करें अनुमतियां ज़रूरी हैं.

2. क्लाइंट लाइब्रेरी इंस्टॉल करना

Python पैकेज इंस्टॉल करने के लिए, venv के साथ-साथ pip का इस्तेमाल करने का सुझाव दिया जाता है: sudo -s apt-get install python3-venv python3 -m venv analytics-quickstart source analytics-quickstart/bin/activate pip install --upgrade google-api-python-client pip2install --upgrade o

3. सैंपल सेटअप करें

आपको HelloAnalytics.py नाम की एक फ़ाइल बनानी होगी, जिसमें दिया गया सैंपल कोड शामिल होगा.

  1. नीचे दिए गए सोर्स कोड को HelloAnalytics.py में कॉपी करें या डाउनलोड करें.
  2. पहले डाउनलोड किए गए client_secrets.json को उसी डायरेक्ट्री में ले जाएं जिसमें सैंपल कोड है.
  3. KEY_FILE_LOCATION की वैल्यू को डाउनलोड किए गए client_secrets.json के सही पाथ से बदलें.
  4. VIEW_ID की वैल्यू बदलें. व्यू आईडी ढूंढने के लिए, खाता एक्सप्लोरर का इस्तेमाल किया जा सकता है.
"""Hello Analytics Reporting API V4."""

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


SCOPES = ['https://www.googleapis.com/auth/analytics.readonly']
KEY_FILE_LOCATION = '<REPLACE_WITH_JSON_FILE>'
VIEW_ID = '<REPLACE_WITH_VIEW_ID>'


def initialize_analyticsreporting():
  """Initializes an Analytics Reporting API V4 service object.

  Returns:
    An authorized Analytics Reporting API V4 service object.
  """
  credentials = ServiceAccountCredentials.from_json_keyfile_name(
      KEY_FILE_LOCATION, SCOPES)

  # Build the service object.
  analytics = build('analyticsreporting', 'v4', credentials=credentials)

  return analytics


def get_report(analytics):
  """Queries the Analytics Reporting API V4.

  Args:
    analytics: An authorized Analytics Reporting API V4 service object.
  Returns:
    The Analytics Reporting API V4 response.
  """
  return analytics.reports().batchGet(
      body={
        'reportRequests': [
        {
          'viewId': VIEW_ID,
          'dateRanges': [{'startDate': '7daysAgo', 'endDate': 'today'}],
          'metrics': [{'expression': 'ga:sessions'}],
          'dimensions': [{'name': 'ga:country'}]
        }]
      }
  ).execute()


def print_response(response):
  """Parses and prints the Analytics Reporting API V4 response.

  Args:
    response: An Analytics Reporting API V4 response.
  """
  for report in response.get('reports', []):
    columnHeader = report.get('columnHeader', {})
    dimensionHeaders = columnHeader.get('dimensions', [])
    metricHeaders = columnHeader.get('metricHeader', {}).get('metricHeaderEntries', [])

    for row in report.get('data', {}).get('rows', []):
      dimensions = row.get('dimensions', [])
      dateRangeValues = row.get('metrics', [])

      for header, dimension in zip(dimensionHeaders, dimensions):
        print(header + ': ', dimension)

      for i, values in enumerate(dateRangeValues):
        print('Date range:', str(i))
        for metricHeader, value in zip(metricHeaders, values.get('values')):
          print(metricHeader.get('name') + ':', value)


def main():
  analytics = initialize_analyticsreporting()
  response = get_report(analytics)
  print_response(response)

if __name__ == '__main__':
  main()

4. सैंपल चलाएं

इसका इस्तेमाल करके सैंपल चलाएं:

python HelloAnalytics.py

जब इन चरणों को पूरा किया जाता है, तो सैंपल, दिए गए व्यू के लिए पिछले सात दिनों के सेशन की संख्या दिखाता है.

समस्या हल करना

विशेषता गड़बड़ी: 'मॉड्यूल_six_moves_urllib_parse' ऑब्जेक्ट में कोई विशेषता नहीं 'urlparse' है

यह गड़बड़ी Mac Nexus में हो सकती है, जहां पीआईपी (पिक्चर में पिक्चर) इंस्टॉल किए जाने से पहले "छह" मॉड्यूल (इस लाइब्रेरी की एक डिपेंडेंसी) का डिफ़ॉल्ट इंस्टॉलेशन लोड होता है. इस समस्या को ठीक करने के लिए, PYTHONPATH के सिस्टम के एनवायरमेंट वैरिएबल में, पीआईपी की इंस्टॉल करने की जगह की जानकारी जोड़ें:

  • नीचे दिए गए निर्देश की मदद से, पीआईपी (पिक्चर में पिक्चर) की इंस्टॉल करने की जगह का पता लगाएं:

    पीआईपी शो 6 | ग्रे "जगह:" | कट -d " " -f2

  • &lt;pip_install_path&gt; को ऊपर तय की गई वैल्यू से बदलें और अपनी ~/.bashrc फ़ाइल में यहां दी गई लाइन जोड़ें:

    निर्यात करें PYTHONPATH=$PYTHONPATH:<pip_install_path>

  • इस कमांड का इस्तेमाल करके, अपनी ~/.bashrc फ़ाइल को किसी भी खुली टर्मिनल विंडो में फिर से लोड करें:

    सोर्स ~/.bashrc