بعد انتهاء العملية بنجاح واستخراج اسم
المورد من ردّ العملية المكتملة، تكون مستعدًا لتنزيل ملف zip
الذي يحتوي على ملفات SDF التي تم إنشاؤها باستخدام media.download
الطريقة.
في ما يلي مثال على كيفية استخدام مكتبة عملاء لتنزيل الملف الناتج:
Java
// Extract download file resource name to use in download request String downloadResourceName = operationResponse.getResponse() .get("resourceName").toString(); // Configure the Media.download request Media.Download downloadRequest = service .media() .download(downloadResourceName); // Create output stream for downloaded file FileOutputStream outStream = new FileOutputStream(output-file); // Download file downloadRequest.executeMediaAndDownloadTo(outStream); System.out.printf("File downloaded to %s\n", outputFile);
Python
# Extract download file resource name to use in download request resourceName = operation["response"]["resourceName"] # Configure the Media.download request downloadRequest = service.media().download_media(resourceName=resourceName) # Create output stream for downloaded file outStream = io.FileIO(output-file, mode='wb') # Make downloader object downloader = googleHttp.MediaIoBaseDownload(outStream, downloadRequest) # Download media file in chunks until finished download_finished = False while download_finished is False: _, download_finished = downloader.next_chunk() print("File downloaded to %s" % output-file)
PHP
// Get client and set defer so it doesn't immediately return. $client = $this->service->getClient(); $client->setDefer(true); // Build media download request. $request = $this->service->media->download( $operation->getResponse()['resourceName'], array('alt' => 'media') ); // Call the API, getting the generated SDF. $response = $client->execute($request); $responseBody = $response->getBody(); // Writes the downloaded file. If the file already exists, it is // overwritten. file_put_contents(output-file, $responseBody); $client->setDefer(false); printf('File saved to: %s\n', output-file);
بعد تنزيل ملفك وفك ضغطه، ستتوفّر لك ملفات البيانات المنظَّمة التي تم إنشاؤها. ستتضمّن الملفات التي تم إنشاؤها أسماء عامة
تحدد نوع ملف SDF (على سبيل المثال: SDF-LineItems.csv
).
الملفات التي تم تخطّيها
إذا تعذّر تضمين بيانات مورد مطلوب في ملف البيانات المنظَّمة المرتبط به، قد يتضمّن ملف ZIP الذي تم تنزيله ملفًا "تم تخطّيه"
(مثال: SDF-LineItems-Skipped.csv
). سيكون لهذا الملف بنية من عمودَين، يتضمن الأول أرقام تعريف الموارد التي تعذّر
تضمينها، ويتضمن الثاني سبب استبعادها.
قد يتم تخطّي الموارد لعدة أسباب، بما في ذلك أنّها في حالة غير متوافقة أو من نوع غير متوافق. تجنَّب تخطّي الموارد باستخدام أحدث إصدار من SDF.