تحميل ملف البيانات المنظَّمة

يمكنك إنشاء المراجع وتعديلها، بما في ذلك مراجع YouTube، آليًا وبشكل مجمّع من خلال تحميل ملفات البيانات المنظَّمة باستخدام Display & Video 360 API. تتناول هذه الصفحة كيفية إعداد ملف بيانات منظَّمة وتحميله باستخدام واجهة برمجة التطبيقات.

يمكن لمشروع Google Cloud تحميل ثلاثين ملف بيانات منظَّمة فقط لكل رقم تعريف معلِن في اليوم.

تجهيز ملف بيانات منظَّمة لتحميله

يجب أن تكون ملفات البيانات المنظَّمة التي تم تحميلها نُسخًا معدَّلة من ملفات البيانات المنظَّمة التي تم تنزيلها مؤخرًا من نوع الملف نفسه ومن المعلِن نفسه. جهِّز ملف البيانات المنظَّمة الذي تم تنزيله للتحميل من خلال إجراء التعديلات التالية:

  • أضِف إدخالات لأي موارد جديدة تريد إنشاءها.
  • عدِّل أي إدخالات حالية للمراجع التي تريد تعديلها.
  • أزِل أي إدخالات ليست جديدة أو معدَّلة لتقليل حجم الملف وتسريع وقت المعالجة وتجنُّب أي تعديلات غير مقصودة.

يُرجى التأكّد من صحة ما يلي قبل تحميل الملف:

  • الملف هو ملف CSV.
  • جميع الإدخالات في الملف مخصّصة لمراجع ضمن المعلِن الرئيسي نفسه.
  • ألا يحتوي الملف على أكثر من 10,000 إدخال

تحميل ملف

حمِّل ملف بيانات منظَّمة باستخدام الطريقة advertisers.sdfuploadtasks.upload. ينشئ هذا الطلب مهمة تحميل ملف بيانات منظَّمة (SDF) Operation. تعالج هذه العملية الطويلة الأمد الملف الذي تم تحميله، وتنشئ الموارد وتعدّلها استنادًا إلى محتوى الملف، وتنشئ ملفات نتائج تسرد التعديلات الناجحة والفاشلة.

إليك كيفية تحميل ملف بيانات منظَّمة واسترداد 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.')