Una volta completata l'operazione e dopo aver estratto il nome della risorsa dalla risposta dell'operazione completata, puoi scaricare il file ZIP contenente gli SDF generati utilizzando il metodo media.download.
Ecco un esempio di come utilizzare una libreria client per scaricare il file risultante:
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 volta scaricato e decompresso il file, i file di dati strutturati generati saranno disponibili. I file generati avranno nomi generici
che identificano il tipo di file SDF (ad es. SDF-LineItems.csv).
File ignorati
Se i dati di una risorsa richiesta non possono essere inclusi nel corrispondente
file di dati strutturati, il file ZIP scaricato potrebbe includere un file "Ignorato"
(ad es. SDF-LineItems-Skipped.csv). Questo file avrà una struttura con due colonne, la prima contenente gli ID delle risorse che non è stato possibile includere e la seconda contenente il motivo della loro esclusione.
Le risorse possono essere ignorate per molti motivi, ad esempio perché si trovano in uno stato o di un tipo non supportato. Evita che le risorse vengano ignorate utilizzando la versione più recente di SDF.