فایل داده های ساختاریافته را آپلود کنید

شما می‌توانید منابع، از جمله منابع یوتیوب، را به صورت برنامه‌نویسی شده و انبوه با آپلود فایل‌های داده ساختاریافته با استفاده از Display & Video 360 API ایجاد و به‌روزرسانی کنید. این صفحه نحوه تهیه و آپلود یک فایل داده ساختاریافته با استفاده از API را مورد بحث قرار می‌دهد.

فقط سی فایل داده ساختاریافته به ازای هر شناسه تبلیغ‌کننده می‌تواند توسط یک پروژه Google Cloud در یک روز آپلود شود.

آماده‌سازی فایل داده‌های ساختاریافته برای آپلود

فایل‌های داده ساختاریافته آپلود شده باید نسخه‌های اصلاح‌شده‌ای از فایل‌های داده ساختاریافته‌ای باشند که اخیراً از همان نوع فایل و از همان تبلیغ‌کننده دانلود شده‌اند . فایل داده ساختاریافته دانلود شده را با انجام به‌روزرسانی‌های زیر برای آپلود آماده کنید:

  • برای هر منبع جدیدی که می‌خواهید ایجاد کنید، ورودی اضافه کنید.
  • هر ورودی موجود برای منابعی که می‌خواهید به‌روزرسانی کنید را به‌روزرسانی کنید.
  • هر ورودی که جدید یا به‌روزرسانی نشده است را حذف کنید تا حجم فایل کاهش یابد، زمان پردازش سریع‌تر شود و احتمال هرگونه به‌روزرسانی ناخواسته از بین برود.

قبل از آپلود فایل، موارد زیر را بررسی کنید:

  • فایل مورد نظر از نوع CSV است.
  • تمام ورودی‌های این فایل مربوط به منابعی هستند که تحت یک تبلیغ‌کننده‌ی والد قرار دارند.
  • این فایل بیش از ۱۰،۰۰۰ مدخل ندارد.

آپلود فایل

یک فایل داده ساختاریافته را با استفاده از متد advertisers.sdfuploadtasks.upload آپلود کنید. این درخواست یک Operation آپلود SDF ایجاد می‌کند. این عملیات طولانی مدت، فایل آپلود شده را پردازش می‌کند، منابع را بر اساس محتوای فایل ایجاد و به‌روزرسانی می‌کند و فایل‌های نتیجه‌ای تولید می‌کند که به‌روزرسانی‌های موفق و ناموفق را فهرست می‌کنند.

در اینجا نحوه آپلود یک فایل داده ساختاریافته و بازیابی Operation حاصل آمده است:

# Import the object used as the media body for the upload request.
from apiclient.http import MediaFileUpload

# Provide the parent advertiser ID for the resources in the SDF.
# The ID value must be a str and not an int.
advertiser_id = advertiser-id

# Provide the filename and local path to the media file.
sdf_filename = sdf-filename
sdf_path = sdf-path

# Create the request body.
body = {
  'filename': sdf_filename,
  'advertiserId': advertiser_id
}

# Create the upload object and use a default MIME type if not identified.
media = MediaFileUpload(sdf_path)
if not media.mimetype():
  media = MediaFileUpload(sdf_filename,'application/octet-stream')

# Upload the structured data file.
upload_response = service.advertisers().sdfuploadtasks().upload(
  advertiserId=advertiser_id,
  body=body,
  media_body=media
).execute()

# Print resulting Operation name.
print(f'SDF was successfully uploaded. Operation {upload_response["name"]} was '
       'created to process the uploaded file.')