Una vez que la operación finalice correctamente y extraigas el nombre del recurso de la respuesta de la operación completada, estará todo listo para descargar el archivo ZIP que contiene los SDF generados con el método media.download
.
Este es un ejemplo de cómo usar una biblioteca cliente para descargar el archivo resultante:
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);
Una vez que descargues y descomprimas el archivo, los archivos de datos estructurados generados estarán disponibles para ti. Los archivos generados tendrán nombres genéricos que identificarán el tipo de archivo SDF (por ejemplo, SDF-LineItems.csv
).
Archivos omitidos
Si los datos de un recurso solicitado no se pueden incluir en el archivo de datos estructurados correspondiente, el archivo ZIP descargado podría incluir un archivo "Omitido" (por ejemplo, SDF-LineItems-Skipped.csv
). Este archivo tendrá una estructura de dos columnas, la primera contendrá los IDs de los recursos que no se pudieron incluir y la segunda contendrá el motivo de su exclusión.
Los recursos se pueden omitir por muchos motivos, como estar en un estado o un tipo no compatibles. Evita que se omitan recursos usando la versión más reciente de SDF.