יש כמה דרכים שונות להגדיר את הלקוח.
הגדרה באמצעות קובץ YAML
אפשר לציין קובץ YAML לשימוש באתחול הלקוח שמכיל את פרטי האימות הדרושים לשליחת בקשות. הגישה לקובץ הזה מתבצעת כשמפעילים לקוח באמצעות השיטה load_from_storage
.
הדרך הכי פשוטה ליצור את הקובץ הזה היא להעתיק את הדוגמה google-ads.yaml
ממאגר GitHub ולשנות אותה כך שתכלול את פרטי הכניסה שלכם, כולל טוקן המפתחים, טוקן הרענון, מזהה הלקוח והסוד של הלקוח.
אם לא מציינים נתיב, הספרייה תחפש את הקובץ בספריית $HOME
:
from google.ads.googleads.client import GoogleAdsClient
client = GoogleAdsClient.load_from_storage()
כדי לציין מיקום שבו נמצא הקובץ google-ads.yaml
, אפשר להעביר את הנתיב כמחרוזת לשיטה כשמפעילים אותה:
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()
אם מספקים את שני הערכים – נתיב שמועבר לשיטה וגם משתנה הסביבה שלמעלה – הספרייה תיתן עדיפות לנתיב שמועבר לשיטה.
הגדרה באמצעות משתני סביבה
אתם יכולים לאחסן את כל הגדרות הלקוח כמשתני סביבה, שייקראו כשמשתמשים בשיטה 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
השיטה 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
ישירות לשיטה 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 או בתצורת dict):
-
refresh_token
: טוקן הרענון של OAuth. -
client_id
: מזהה הלקוח של OAuth. -
client_secret
: סוד הלקוח ב-OAuth. -
developer_token
: טוקן המפתח שלכם לגישה ל-API. -
login_customer_id
: אפשר לעיין במסמכי התיעוד בנושא login-customer-id. -
linked_customer_id
: מידע נוסף זמין במסמכי התיעוד בנושא linked-customer-id. -
json_key_file_path
(לשעברpath_to_private_key_file
): נתיב לקובץ מפתח פרטי מקומי. הוא משמש לאימות באמצעות חשבון שירות. מידע נוסף זמין במאמר בנושא חשבון שירות OAuth2. -
impersonated_email
(לשעברdelegate_account
): כתובת אימייל של חשבון שמשמשת ככתובת אימייל עם גישה. הפרמטר הזה משמש לאימות באמצעות חשבון שירות. אפשר לעיין במסמכי התיעוד בנושא חשבון שירות OAuth2. -
logging
: הגדרת רישום ביומן. השדות ביומן מתוארים בהמשך. http_proxy
: אפשר לעיין בתיעוד בנושא שרת Proxy.-
use_proto_plus
: האם להשתמש בהודעות proto-plus. אפשר לעיין בתיעוד בנושא הודעות Protobuf.
שדות כלליים כמשתני סביבה:
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
configuration
field, נגזרים ישירות מהמודול המובנה logging.config
כי הספרייה מעבירה את כל השדות מתחת ל-logging
namespace
ישירות לשיטה logging.config.dictConfig
. פרטים נוספים זמינים במדריך לרישום ביומן.
-
version
: ערך של מספר שלם שמייצג גרסת סכימה. -
disable_existing_loggers
: האם להשבית את כלי הרישום שהוגדרו במקום אחר באפליקציה. -
formatters
: מילונים שמגדירים סוגים שונים של מעצבים. -
handlers
: מילונים שמגדירים מטפלים שונים, שקובעים לאן נכתבים היומנים ובאילו מעצבים צריך להשתמש. -
loggers
: מילונים שמגדירים סוגים שונים של כלי רישום, שכוללים handler ורמת רישום.