قابلیت مشاهده و معیارهای ترافیک نامعتبر را جستجو کنید

نمای کلی

دستورالعمل‌های زیر نمونه‌هایی از نحوه‌ی پرس‌وجوی ترافیک معتبر قابل مشاهده و ترافیک نامعتبر با استفاده از API ارائه می‌دهند. این معیارها محدود به موجودی خریداری شده با استفاده از Google Ads، Display & Video 360 و YouTube reserve هستند.

توجه داشته باشید که معیارهای نمایش TrueView که توسط MRC تأیید شده‌اند، نیاز به استفاده از ADH API دارند، زیرا هیچ پرس‌وجوی الگویی مرتبطی وجود ندارد. علاوه بر این، معیارهای نمایش TrueView را نباید با معیارهای قابلیت مشاهده اشتباه گرفت.

درگاه خریدی را که می‌خواهید معیارهای مشاهده‌پذیری آن را بررسی کنید، انتخاب کنید:

در یوتیوب

معیارهای مشاهده‌پذیری پرس‌وجو با استفاده از رابط کاربری

پرس‌وجوی قابلیت مشاهده‌ی الگوسازی‌شده، معیارهای معتبر MRC را ارائه می‌دهد.

اعتبارسنجی MRC به صورت دودویی است - نتایج شما می‌توانند اعتبارسنجی شوند یا نشوند - و برای کل جدول نتایج شما اعمال می‌شود. در BigQuery، برچسب adh-mrc-accredited برای همه نتایج اعتبارسنجی شده توسط MRC اعمال می‌شود. برای اینکه معیارهای شما اعتبارسنجی شده توسط MRC باشند، باید پرس و جو را از طریق الگو اجرا کنید.

برای اجرای پرس‌وجوی معتبر MRC از طریق الگو:

  1. دستورالعمل‌های مربوط به نحوه ایجاد یک پرس‌وجو را دنبال کنید و مطمئن شوید که انتخاب می‌کنیدGoogle Ads به عنوان درب خرید و قابلیت مشاهده ویدیو به عنوان الگوی پرس و جو.
  2. روی دکمه‌ی اجرا (Run) در کنار «استفاده از الگو» (Use template) کلیک کنید.

جستجوی ترافیک نامعتبر و معیارهای مشاهده‌پذیری با استفاده از API

معیارهای ترافیک و قابلیت مشاهده نامعتبر را می‌توان با استفاده از generateIvtReport از API ADH بازیابی کرد. و نقاط پایانی startAnalysis . برای ترافیک نامعتبر، معیارهای شما باید از طریق generateIvtReport بازیابی شوند. برای اینکه برچسب adh-mrc-accredited اعمال شود و معیارهای شما MRC-accredited شوند. به طور مشابه، کوئری سراسری مشخص شده در زیر باید برای معیارهای قابلیت مشاهده از طریق API ADH برای اعتبارسنجی MRC استفاده شود. این بخش نحوه ارسال درخواست به این نقطه پایانی با استفاده از کتابخانه کلاینت پایتون را پوشش می‌دهد.

دستورالعمل‌های راه‌اندازی و مجوزدهی/احراز هویت را در راهنمای سریع API دنبال کنید.

پس از جایگزینی فیلدهای زیر با اطلاعات مربوط به حساب کاربری خود، می‌توانید کوئری زیر را برای بازیابی گزارش ترافیک نامعتبر برای حساب کاربری خود اجرا کنید. Google Ads کمپین‌ها:

  • پرونده اسرار مشتری
  • شناسه مشتری
  • کلید API
  • Campaign IDs
  • منطقه زمانی

کد نمونه

ترافیک نامعتبر

from __future__ import print_function
import json
import os.path
from google.auth.transport.requests import Request
from google.oauth2.credentials import Credentials
from google_auth_oauthlib.flow import InstalledAppFlow
from googleapiclient.discovery import build

# If modifying these scopes, delete the file `token.json`.
SCOPES = ['https://www.googleapis.com/auth/adsdatahub']
TOKEN_FILE = 'token.json'

creds = None

# The file token.json stores the user's access and refresh tokens, and is
# created automatically when the authorization flow completes for the first
# time.
if os.path.exists(TOKEN_FILE):
    creds = Credentials.from_authorized_user_file(TOKEN_FILE, SCOPES)
# If there are no (valid) credentials available, let the user log in.
if not creds or not creds.valid:
    if creds and creds.expired and creds.refresh_token:
        creds.refresh(Request())
    else:
        flow = InstalledAppFlow.from_client_secrets_file(
            'YOUR_CLIENT_SECRETS.json', SCOPES)
        creds = flow.run_local_server(port=0)
    # Save the credentials for the next run.
    with open(TOKEN_FILE, 'w') as token:
        token.write(creds.to_json())

service = build('adsdatahub', 'v1', credentials=creds,
                developerKey='YOUR_API_KEY',
                discoveryServiceUrl='https://adsdatahub.googleapis.com/$discovery/rest?version=v1&labels=')

body = {
    'ads_data_customer_id': YOUR_CUSTOMER_ID,
    'start_date': {
        'year': 2019,
        'month': 12,
        'day': 15
    },
    'end_date': {
        'year': 2019,
        'month': 12,
        'day': 20
    },
    'time_zone': 'YOUR_TIMEZONE',
    'google_ads_dimensions': {
        'campaign_ids': [YOUR_CAMPAIGN_IDS],
        'metric_type': 'METRIC_TYPE_IMPRESSION'
    },
    'dest_table': 'YOUR_DESTINATION_TABLE'
}

resp = service.customers().generateIvtReport(name='customers/YOUR_CUSTOMER_ID,
                                             body=body).execute()
print(json.dumps(resp))

معیارهای قابلیت مشاهده

from __future__ import print_function
import json
import os.path
from google.auth.transport.requests import Request
from google.oauth2.credentials import Credentials
from google_auth_oauthlib.flow import InstalledAppFlow
from googleapiclient.discovery import build

# If modifying these scopes, delete the file `token.json`.
SCOPES = ['https://www.googleapis.com/auth/adsdatahub']
TOKEN_FILE = 'token.json'

creds = None

# The file token.json stores the user's access and refresh tokens, and is
# created automatically when the authorization flow completes for the first
# time.
if os.path.exists(TOKEN_FILE):
    creds = Credentials.from_authorized_user_file(TOKEN_FILE, SCOPES)
# If there are no (valid) credentials available, let the user log in.
if not creds or not creds.valid:
    if creds and creds.expired and creds.refresh_token:
        creds.refresh(Request())
    else:
        flow = InstalledAppFlow.from_client_secrets_file(
            'YOUR_CLIENT_SECRETS.json', SCOPES)
        creds = flow.run_local_server(port=0)
    # Save the credentials for the next run.
    with open(TOKEN_FILE, 'w') as token:
        token.write(creds.to_json())

service = build('adsdatahub', 'v1', credentials=creds,
                developerKey='YOUR_API_KEY',
                discoveryServiceUrl='https://adsdatahub.googleapis.com/$discovery/rest?version=v1&labels=')

name = 'customers/global/analysisQueries/f41320e7296d49158e572aba662f35b1'
body = {
  'spec': {
    'ads_data_customer_id': YOUR_CUSTOMER_ID,
    'start_date': {
      'year': 2019,
      'month': 12,
      'day': 15
    },
    'end_date': {
      'year': 2019,
      'month': 12,
      'day': 20
    },
    'time_zone': 'YOUR_TIMEZONE',
    'parameter_values': {
      'campaign_ids': {
        'array_value': {
          'values': [
            {
              'value': 'YOUR_CAMPAIGN_ID'
            },
          ]
        }
      }
    }
  },
  'dest_table': 'YOUR_DESTINATION_TABLE',
  'customer_id': YOUR_CUSTOMER_ID
}

resp = service.customers().analysisQueries().start(name=name,body=body).execute()
print(json.dumps(resp))

محاسبه معیارهای قابلیت مشاهده بدون احتساب ترافیک نامعتبر عمومی

از فرمول‌های زیر برای استخراج معیارهای قابلیت مشاهده معتبر MRC، بدون احتساب ترافیک نامعتبر عمومی (GIVT) استفاده کنید:

  • کل بازدیدها (خالص از GIVT): کل بازدیدها - بازدیدهای نامعتبر عمومی
  • تعداد نمایش‌های قابل مشاهده (خالص GIVT): نمایش‌های قابل مشاهده + نمایش‌های قابل مشاهده نامعتبر - نمایش‌های قابل مشاهده GIVT
  • تعداد نمایش‌های قابل اندازه‌گیری (خالص GIVT): تعداد نمایش‌های قابل اندازه‌گیری + تعداد نمایش‌های نامعتبر قابل اندازه‌گیری - تعداد نمایش‌های قابل اندازه‌گیری GIVT
  • تعداد نمایش‌های واجد شرایط (خالص GIVT): نمایش‌های واجد شرایط + نمایش‌های واجد شرایط نامعتبر - نمایش‌های واجد شرایط GIVT
  • تعداد نمایش غیرقابل مشاهده (خالص GIVT): تعداد نمایش قابل اندازه‌گیری (خالص GIVT) - تعداد نمایش قابل مشاهده (خالص GIVT)
  • تعداد نمایش‌های غیرقابل اندازه‌گیری (خالص GIVT): تعداد نمایش‌های واجد شرایط (خالص GIVT) - تعداد نمایش‌های قابل اندازه‌گیری (خالص GIVT)
  • درصد نمایش‌های قابل اندازه‌گیری (خالص GIVT): نمایش‌های قابل اندازه‌گیری (خالص GIVT) / نمایش‌های واجد شرایط (خالص GIVT)
  • درصد نمایش‌های قابل مشاهده (خالص GIVT): نمایش‌های قابل مشاهده (خالص GIVT) / نمایش‌های قابل اندازه‌گیری (خالص GIVT)