Python

Google, Ad Manager API के साथ इंटरैक्ट करने के लिए Python क्लाइंट लाइब्रेरी उपलब्ध कराता है. हमारा सुझाव है कि आप PyPI के साथ क्लाइंट लाइब्रेरी का इस्तेमाल करें.

शुरू करने के लिए, अपनी पसंद के IDE में एक नया प्रोजेक्ट बनाएं या किसी मौजूदा प्रोजेक्ट में डिपेंडेंसी जोड़ें. Google, PyPI पर क्लाइंट लाइब्रेरी आर्टफ़ैक्ट को google-ads-admanager के तौर पर पब्लिश करता है.

requirements.txt

google-ads-admanager==0.10.7

कमांड लाइन

pip install google-ads-admanager

क्रेडेंशियल कॉन्फ़िगर करना

Python क्लाइंट लाइब्रेरी, पुष्टि करने के लिए OAuth2 और ऐप्लिकेशन के डिफ़ॉल्ट क्रेडेंशियल (एडीसी) का इस्तेमाल करती है.

एडीसी, क्रेडेंशियल को इन जगहों पर क्रम से खोजता है:

  1. GOOGLE_APPLICATION_CREDENTIALS एनवायरमेंट वैरिएबल.
  2. Google Cloud CLI (gcloud CLI) की मदद से सेट अप किए गए उपयोगकर्ता क्रेडेंशियल.
  3. Google Cloud पर चलने के दौरान, Google Cloud संसाधन से जुड़ा सेवा खाता.

एडीसी क्रेडेंशियल बनाने और उन्हें कॉन्फ़िगर करने के लिए, पुष्टि करना लेख पढ़ें.

अपना पहला अनुरोध करना

हर सेवा में एक ServiceClient ऑब्जेक्ट होता है. इसमें हर REST तरीके के लिए, सिंक्रोनस और एसिंक्रोनस, दोनों तरीके होते हैं. नीचे दिए गए उदाहरण में, Network को सिंक्रोनस तरीके से पढ़ा गया है.



from google.ads import admanager_v1


def sample_get_network():
    # Create a client
    client = admanager_v1.NetworkServiceClient()

    # Initialize request argument(s)
    request = admanager_v1.GetNetworkRequest(
        name="networks/[NETWORK_CODE]",
    )

    # Make the request
    response = client.get_network(request=request)

    # Handle the response
    print(response)

अन्य तरीकों और संसाधनों के उदाहरणों के लिए, GitHub डेटा स्टोर करने की जगह googleapis/google-cloud-python देखें.

एचटीटीपी अनुरोध और जवाब लॉग करना

Python क्लाइंट लाइब्रेरी, एचटीटीपी अनुरोधों और जवाबों को लॉग करने के लिए, स्टैंडर्ड Python logging लाइब्रेरी का इस्तेमाल करती है. डिफ़ॉल्ट रूप से, लॉगिंग की सुविधा बंद होती है.

लॉगिंग की सुविधा चालू करने के लिए, एनवायरमेंट वैरिएबल GOOGLE_SDK_PYTHON_LOGGING_SCOPE सेट करें. यह एनवायरमेंट वैरिएबल, logging.DEBUG या इससे ऊपर के लेवल पर लॉगिंग इवेंट को मैनेज करने की सुविधा को कॉन्फ़िगर करता है.

# Log only Ad Manager API events
export GOOGLE_SDK_PYTHON_LOGGING_SCOPE=google.ads.admanager_v1

# Log all Google library events
export GOOGLE_SDK_PYTHON_LOGGING_SCOPE=google

इसके अलावा, Python logging मॉड्यूल का इस्तेमाल किया जा सकता है:

import logging

from google.ads import admanager_v1

logger = logging.getLogger("google.ads.admanager_v1")
logger.addHandler(logging.StreamHandler())
logger.setLevel(logging.DEBUG)

गड़बड़ियां ठीक करना

एपीआई से जुड़ी सभी गड़बड़ियां, बेस क्लास GoogleAPIError को एक्सटेंड करती हैं.

गड़बड़ी की वजह बताने वाले फ़ील्ड से, गड़बड़ी के टाइप की खास तौर पर पहचान की जाती है. इस फ़ील्ड का इस्तेमाल करके, गड़बड़ी को ठीक करने का तरीका तय करें.

try:
  network = client.get_network(request=request)
  print(network)
except GoogleAPIError as e:
  # Handle error
  print(e.reason)

Ad Manager API से जुड़ी गड़बड़ियों में एक यूनीक requestId भी शामिल होता है. इसे सहायता टीम को देकर, समस्या हल करने में मदद ली जा सकती है. यहां दिए गए उदाहरण में, GoogleAPIError से requestId को निकाला गया है;

except GoogleAPIError as e:
  requestInfoType = "type.googleapis.com/google.rpc.RequestInfo"
  requestInfo = [detail for detail in e.details if detail['@type'] == requestInfoType][0]
  print(requestInfo['requestId'])

प्रॉक्सी सेटिंग कॉन्फ़िगर करें

Python क्लाइंट लाइब्रेरी, एनवायरमेंट वैरिएबल की सेटिंग http_proxy और https_proxy का पालन करती है.