Oluşturulan Yapılandırılmış Veri Dosyaları (SDF'ler) bir ZIP dosyasında saklanır. media.download kullanarak başarılı Operation öğesinin response.resourceName alanındaki değeri kullanarak bu dosyayı indirin.
SDF ZIP dosyasını indirmek için:
Java
// Provide the name of the finished sdfdownloadtask operation. String operationName = operation-name; // Provide the path for the output file. String outputFile = output-file; // Retrieve the resource location from the finished operation. Operation operation = service.sdfdownloadtasks().operations().get(operationName).execute(); String fileLocation = operation.getResponse().get("resourceName").toString(); // Configure the Media.download request. Media.Download downloadRequest = service.media().download(fileLocation); // Create output stream for downloaded file. FileOutputStream outStream = new FileOutputStream(outputFile); // Download file. downloadRequest.executeMediaAndDownloadTo(outStream); System.out.printf("File downloaded at %s", outputFile);
Python
# Import the object used for media download. from googleapiclient import http as googleHttp # Provide the name of the successfully completed sdfdownloadtask operation. operation_name = operation-name # Provide the path for the output file. output_path = output-path # Retrieve the completed operation. operation = ( service.sdfdownloadtasks().operations().get(name=operation_name).execute() ) # Retrieve the file location from the operation. file_location = operation["response"]["resourceName"] # Configure the media.download request. download_request = service.media().download_media(resourceName=file_location) # Create output stream for downloaded file. out_stream = io.FileIO(output_path, mode="wb") # Build downloader object. downloader = googleHttp.MediaIoBaseDownload(out_stream, download_request) # Download file in chunks until finished. download_finished = False while download_finished is False: _, download_finished = downloader.next_chunk() print(f"File downloaded at {output_path}.")
PHP
// Provide the name of the finished sdfdownloadtask operation. $operationName = operation-name; // Provide the path for the output file. $outputFile = output-file; try { // Call the API, retrieving the SDF Download Task. $operation = $this->service->sdfdownloadtasks_operations->get( $operationName ); $fileLocation = $operation->getResponse()['resourceName']; $client = $this->service->getClient(); $client->setDefer(true); $request = $this->service->media->download( $fileLocation, 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($outputFile, $responseBody); $client->setDefer(false); } catch (\Exception $e) { $this->renderError($e); return; } printf('<p>File downloaded at %s</p>', $outputFile);
Dosyaları ayıklama
Oluşturulan SDF'leri ZIP dosyasından çıkarın. SDF'ler, türlerini tanımlayan genel dosya adları kullanır. Satır öğesi SDF'si SDF-LineItems.csv olarak adlandırılır.
ZIP dosyası, her dosya türü için "Atlanan" dosyaları içerebilir. "Atlanan" dosyalar, SDF'ye dahil edilmeyen kaynakları tanımlar. Bunlar, -Skipped
sonekiyle adlandırılır. Bu dosyalar iki sütunlu bir yapıya sahiptir. İlk sütun, atlanan kaynağı tanımlar. İkinci sütunda hariç tutulma nedenleri açıklanır.