Baixar o arquivo

Os arquivos de dados estruturados (SDFs) gerados são armazenados em um arquivo ZIP. Faça o download desse arquivo usando o valor no campo response.resourceName do Operation bem-sucedido usando media.download.

Saiba como baixar um arquivo SDF ZIP:

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);

Extrair arquivos

Extraia os SDFs gerados do arquivo ZIP. Os SDFs usam nomes de arquivos genéricos que identificam o tipo deles. Um SDF de item de linha é chamado de SDF-LineItems.csv.

O arquivo ZIP pode incluir arquivos "Ignorados" para cada tipo de arquivo. Os arquivos "Ignorados" identificam recursos não incluídos no SDF. Elas são nomeadas com um sufixo -Skipped. Esses arquivos têm uma estrutura de duas colunas. A primeira coluna identifica o recurso ignorado. A segunda coluna explica a exclusão.