Generar fichero .csv de taxonomía de Google en Español

 



Hay un problema (404 not found) en el enlace de documentación de taxonomía de Google para descargar el archivo .xls con toda su taxonomía en español. El enlace en idioma inglés funciona perfecto: https://support.google.com/merchants/answer/6324436?hl=es

Este archivo se utiliza para clasificar el tipo de producto para Google Merchant.

El departamento de soporte me indicó que tenían problemas técnicos y me dirigieron al archivo de texto, pero que no se puede importar directamente, ya que un archivo .csv es lo más correcto para proceder a una importación básica y sencilla.

Como tenía trabajo que hacer, he desarrollado un pequeño programa en PHP que lee el archivo .txt original y lo exporta a .csv

Ahora ya puedes importar directamente en español... y sin problemas técnicos ^_^. Te dejo el código:

<?php
// Name of the input file
$inputFile = "https://www.google.com/basepages/producttype/taxonomy-with-ids.es-ES.txt";

// Open input file to read
$fileHandle = fopen($inputFile, "r");
if ($fileHandle === false) {
    die("Cannot open  $inputFile");
}

// Open .csv file to write
$csvFile = fopen("output.csv", "w");

// For each line of the readed file
$lines = 0;
while (($line = fgets($fileHandle)) !== false) {
    if( ++$lines == 1 ) continue; // skip first line
    
    // Delete spaces at begin & end from the line
    $line = trim($line);
    
    // Split number and fields
    list($number, $fields) = explode(' - ', $line);
    $fieldsArray = explode(' > ', $fields);

    // Make a line in .csv format
    $csvLine = $number . ';' . implode(';', $fieldsArray);
    
    // Write the line in de .csv file
    fputcsv($csvFile, explode(';', $csvLine), ';');
}

// Close the files
fclose($fileHandle);
fclose($csvFile);

echo ".csv file created.";
?>

Comentarios

Artículos más populares

Ja es poden veure els programes de 'REDES' de TVE2 per internet

Clase en PHP para encender/apagar LED en Raspberry pi

Raspberry Pi. Encender/Apagar LED desde PHP. Acceso directo a los puertos GPIO ultrarápido.