Error message

User warning: The following module is missing from the file system: fast_404. For information about how to fix this, see the documentation page. in _drupal_trigger_error_with_delayed_logging() (line 1143 of /mnt/www/html/ooyala/docroot/includes/bootstrap.inc).

Convertir estadísticas JSON a CSV

Con la Interfaz de usuario de Backlot puede descargar datos en el formato de valores separados por comas (CSV). A continuación se presenta un enfoque general para hacer esto de manera programática.

Todas las respuestas de la API de estadísticas están en el formato JSON (JavaScript Object Notation). Se puede realizar un análisis más útil con programas de hojas de cálculo, que en general pueden leer datos CSV.

Puesto que la API de Backlot no depende de ningún lenguaje, no nos centraremos en ningún lenguaje en particular. Nos basaremos en JavaScript para ilustrar la conversión. En Internet hay muchas herramientas de conversión gratuitas para muchos lenguajes diferentes.

A continuación se muestra un ejemplo de programa JavaScript (basado en cierto modo en las ideas de json.org) que convierte el JSON en una matriz (llamada json3) a CSV. En la práctica, en lugar de definir una matriz, es posible que desee guardar las respuestas de JSON en archivos y leer el archivo, o cambiar el siguiente script para leer desde otras fuentes de datos. Del mismo modo, este script abre una nueva ventana para preguntarle si quiere descargar los datos CSV; si lo desea, puede cambiar este comportamiento.
<script src="scripts/json.js" type="text/javascript"></script>
<script type="text/javascript">
var json3 = { "d": "[{\"Id\":1,\"UserName\":\"Sam Smith\"},{\"Id\":2,\"UserName\":\"Fred Frankly\"},{\"Id\":1,\"UserName\":\"Zachary Zupers\"}]" }

DownloadJSON2CSV(json3.d);

function DownloadJSON2CSV(objArray)
{
   var array = typeof objArray != 'object' ? JSON.parse(objArray) : objArray;

   var str = '';

   for (var i = 0; i < array.length; i++) {
       var line = '';

       for (var index in array[i]) {
            line += array[i][index] + ',';
       }

       // Here is an example where you would wrap the values in double quotes
       // for (var index in array[i]) {
       //    line += '"' + array[i][index] + '",';
       // }

       line.slice(0,line.Length-1); 

       str += line + '\r\n';
   }
   // Might want to change this output
   window.open( "data:text/csv;charset=utf-8," + escape(str))
}
</script>
    
  1. Realice las consultas necesarias a la API para recuperar los datos que desee. Asegúrese de que se trata de datos que se prestan a la conversión y de que va a incluir dimensiones similares en los datos, independientemente de su tipo.
  2. Convierta los datos a CSV con el programa de conversión deseado, ya sea una variante del JavaScript mostrado anteriormente o para su lenguaje preferido.