הגדרות אישיות

יש כמה דרכים שונות להגדיר את הלקוח.

הגדרה באמצעות קובץ YAML

אפשר לציין קובץ YAML שישמש לאתחול הלקוח שמכיל את מידע האימות הדרוש כדי להגיש בקשות. הקובץ הזה הוא מתבצעת גישה כשלקוח מאותחל באמצעות השיטה load_from_storage. הדרך הקלה ביותר ליצור את הקובץ הזה היא להעתיק את google-ads.yaml ממאגר ה-GitHub של GitHub, ומשנים אותו כך שיכלול את פרטי הכניסה שלכם, כולל קוד המפתח, אסימון הרענון, מזהה הלקוח וסוד הלקוח.

אם לא תספקו נתיב, הספרייה תופיע בספרייה $HOME עבור הקובץ:

from google.ads.googleads.client import GoogleAdsClient
client = GoogleAdsClient.load_from_storage()

כדי לציין את המיקום שבו נמצא הקובץ google-ads.yaml, אפשר להעביר הנתיב כמחרוזת ל-method כשקוראים לו:

from google.ads.googleads.client import GoogleAdsClient
client = GoogleAdsClient.load_from_storage("path/to/google-ads.yaml")

אתם יכולים גם לציין את הנתיב על ידי הגדרה של משתנה סביבה ספציפי:

import os

os.environ["GOOGLE_ADS_CONFIGURATION_FILE_PATH"] = "path/to/google-ads.yaml"
from google.ads.googleads.client import GoogleAdsClient
client = GoogleAdsClient.load_from_storage()

אם ציינתם את שני הערכים, הנתיב מועבר ל-method וגם את הערכים שצוינו למעלה קיים משתנה סביבה – הספרייה תיתן עדיפות לנתיב מועבר ל-method.

הגדרה באמצעות משתני סביבה

אפשר לאחסן את כל הגדרות הלקוח כמשתני סביבה, ייקרא כשמשתמשים ב-method load_from_env של הלקוח. סביבה המשתנים צריכים להיות בעלי שם זהה לזה שמוגדר בפונקציה google-ads.yaml קובץ, אבל עליו להיות באותיות רישיות ולכלול קידומת GOOGLE_ADS_. מרחב שמות. לדוגמה, client_id צריך להישמר בתור GOOGLE_ADS_CLIENT_ID.

משתני הסביבה מוגדרים בדרך כלל בקובץ תצורה של bash, כקובץ .bashrc או .bash_profile שממוקם בספרייה $HOME. הם ניתן להגדיר גם באמצעות שורת הפקודה. לתשומת ליבכם: נניח שאתם משתמשים ב-bash, אם אתם משתמשים במעטפת אחרת, יכול להיות שתצטרכו כדי לעיין במסמכי התיעוד בנושא הגדרת משתני סביבה שבה אתם משתמשים.

יש כמה שלבים בסיסיים להגדרה של משתנה סביבה באמצעות .bashrc את הקובץ באמצעות טרמינל:

# Append the line "export GOOGLE_ADS_CLIENT_ID=1234567890" to
# the bottom of your .bashrc file.
$ echo "export GOOGLE_ADS_CLIENT_ID=1234567890" >> ~/.bashrc
# Update your bash environment to use the most recently updated
# version of your .bashrc file.
$ src ~/.bashrc

אפשר להגדיר את משתני הסביבה גם ישירות במכונה של הטרמינל משורת הפקודה:

$ export GOOGLE_ADS_CLIENT_ID=1234567890
$ echo $GOOGLE_ADS_CLIENT_ID
1234567890

ה-method load_from_env טוענת את נתוני ההגדרות מה-environ במודול os המובנה של Python. מוצרים לדוגמה: os.environ["GOOGLE_ADS_CLIENT_ID"]

דוגמה לאופן שבו מאתחלים מופע לקוח עם הגדרות אישיות ממשתני סביבה:

from google.ads.googleads.client import GoogleAdsClient
client = GoogleAdsClient.load_from_env()

כדי להגדיר את logging באמצעות משתני סביבה, צריך להגדיר את הערך חייב להיות אובייקט JSON שתואם למבנה של מפתחות ה-YAML דוגמה google-ads.yaml קובץ תצורה.

הדוגמה הבאה ממחישה איך להגדיר את הפרמטר הזה באמצעות הקובץ .bashrc:

export GOOGLE_ADS_LOGGING='{
  "version": 1,
  "disable_existing_loggers": false,
  "formatters": {
    "default_fmt": {
      "format": "[%(asctime)s - %(levelname)s] %(message).5000s",
      "datefmt": "%Y-%m-%d %H:%M:%S"
    }
  },
  "handlers": {
    "default_handler": {
      "class": "logging.StreamHandler",
      "formatter": "default_fmt"
    }
  },
  "loggers": {
    "": {
      "handlers": ["default_handler"],
      "level": "INFO"
    }
  }
}'

הגדרה באמצעות מחרוזת YAML

אם קראתם קובץ YAML בזיכרון, תוכלו לשלוח אותו ישירות הלקוח בזמן האתחול. כדי לעשות את זה, פשוט משתמשים בשיטה load_from_string.

from google.ads.googleads.client import GoogleAdsClient

with open("/path/to/yaml", "rb") as handle:
    yaml = handle.read()

client = GoogleAdsClient.load_from_string(yaml)

הגדרה באמצעות dict

אפשר להעביר dict ישירות ל-method load_from_dict. לדוגמה:

from google.ads.googleads.client import GoogleAdsClient

credentials = {
    "developer_token": "abcdef123456",
    "refresh_token": "1//0abcdefghijklABCDEF",
    "client_id": "123456-abcdef.apps.googleusercontent.com",
    "client_secret": "aBcDeFgHiJkL"}

client = GoogleAdsClient.load_from_dict(credentials)

שדות ההגדרה

ההגדרה של ספריית הלקוח תומכת בשדות הבאים.

שדות כלליים (השמות האלה זהים, גם אם משתמשים ב-YAML וגם אם משתמשים בדיקט ):

שדות כלליים כמשתני סביבה:

  • GOOGLE_ADS_CONFIGURATION_FILE_PATH
  • GOOGLE_ADS_REFRESH_TOKEN
  • GOOGLE_ADS_CLIENT_ID
  • GOOGLE_ADS_CLIENT_SECRET
  • GOOGLE_ADS_DEVELOPER_TOKEN
  • GOOGLE_ADS_LOGIN_CUSTOMER_ID
  • GOOGLE_ADS_LINKED_CUSTOMER_ID
  • GOOGLE_ADS_JSON_KEY_FILE_PATH (לשעבר GOOGLE_ADS_PATH_TO_PRIVATE_KEY_FILE)
  • GOOGLE_ADS_IMPERSONATED_EMAIL (לשעבר GOOGLE_ADS_DELEGATE_ACCOUNT)
  • GOOGLE_ADS_LOGGING
  • GOOGLE_ADS_HTTP_PROXY
  • GOOGLE_ADS_USE_PROTO_PLUS

שדות רישום ביומן, שהם שדות מתחת להגדרה של logging נגזרים ישירות מהמודול המובנה logging.config כי הספרייה תעביר את כל השדות במרחב השמות logging ישירות אל logging.config.dictConfig . פרטים מלאים זמינים במדריך הרישום ביומן.

  • version: ערך של מספר שלם שמייצג גרסת סכימה.
  • disable_existing_loggers: האם יומני רישום הוגדרו במקום אחר ב- צריך להשבית את האפליקציה.
  • formatters: מילונים שמגדירים סוגים שונים של עיצובים.
  • handlers: מילונים שמגדירים מטפלים שונים, שקובעים איפה יומנים נכתבים ובאילו פורמטים צריך להשתמש.
  • loggers: מילונים שמגדירים סוגים שונים של יומנים, כולל רמת ה-handler ורמת היומן.