<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Chuso! &#187; bobapp</title>
	<atom:link href="http://chusete.es/category/bobapp/feed/" rel="self" type="application/rss+xml" />
	<link>http://chusete.es</link>
	<description>A la tercera va la vencida</description>
	<lastBuildDate>Tue, 27 Jul 2010 11:57:01 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1-alpha</generator>
		<item>
		<title>Bobapp &#8211; Cifras de tráfico a partir de Google Trends</title>
		<link>http://chusete.es/2009/03/05/bobapp-cifras-de-trafico-a-partir-de-google-trends/</link>
		<comments>http://chusete.es/2009/03/05/bobapp-cifras-de-trafico-a-partir-de-google-trends/#comments</comments>
		<pubDate>Thu, 05 Mar 2009 02:58:40 +0000</pubDate>
		<dc:creator>chusete</dc:creator>
				<category><![CDATA[bobapp]]></category>
		<category><![CDATA[desarrollo]]></category>
		<category><![CDATA[desarrollo web]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[programación]]></category>
		<category><![CDATA[tráfico web]]></category>

		<guid isPermaLink="false">http://chusete.es/?p=159</guid>
		<description><![CDATA[¡Hola amigos! Hoy vamos a aprender cómo obtener las cifras de tráfico de una web gracias a la herramienta Google Trends. Esta herramienta, para generar la gráfica, utiliza la API de gráficas Google Charts, por lo que sólo es necesario entender el &#8220;idioma&#8221; que esta API habla para poder extraer cifras aproximadas del tráfico de [...]]]></description>
			<content:encoded><![CDATA[<p>¡Hola amigos! Hoy vamos a aprender cómo obtener las cifras de tráfico de una web gracias a la herramienta <a href="http://www.google.es/trends">Google Trends</a>. Esta herramienta, para generar la gráfica, utiliza la API de gráficas <a href="http://code.google.com/intl/es-ES/apis/chart/">Google Charts</a>, por lo que sólo es necesario entender el &#8220;idioma&#8221; que esta API habla para poder extraer cifras aproximadas del tráfico de una web.</p>
<p>De paso introduzco una nueva sección: Bienvenidos a Bobapp! El apartado donde colgaré aplicaciones bobas que se me ocurran <img src='http://chusete.es/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Volviendo a lo que nos atañe: Para consultar el tráfico de una página hay que hacer lo siguiente:</p>
<ol>
<li>Accedes a <a href="http://trends.google.com/websites">Google Trends.para páginas web</a>.</li>
<li>Si no has iniciado sesión con tu usuario, hazlo ahora. Este paso es necesario.</li>
<li>Consulta el tráfico de una página. Una y no más.</li>
<li>Copia la URL en la que se encuentra la gráfica.</li>
<li>Accede a <a href="http://chusete.es/bobapp/gtrends.php">http://chusete.es/bobapp/gtrends.php</a>.</li>
<li>Pega la URL de la gráfica y dale a Enviar.</li>
<li>Obtendrás una tablita con las cifras de tráfico y el error cometido.</li>
</ol>
<p>Esta bobapp está dedicada a mi grán amigo Simón, amante y estudioso de las métricas de tráfico <img src='http://chusete.es/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Y para los curiosos aquí tenéis el código fuente de la función &#8220;que hace la magia&#8221;:</p>
<pre name="code" class="php">  function get_traffic($chart_url) {
    // Construimos el array con las correspondencias numéricas
    for($j=0, $i=65;$i<=90;$i++) { $chdata[chr($i)] = $j++; }
    for($i=97;$i<=122;$i++) { $chdata[chr($i)] = $j++; }
    for($i=0;$i<=9;$i++) { $chdata[$i] = $j++; }

    /* Obtenemos las fechas de cada valor. Se muestran los últimos 22
      meses completos, y de ellos, 56 valores. Transcurren
      aproximadamento 12 días entre cada valor */
    $last_date = strtotime('-1 second',
      strtotime(date('m').'/01/'.date('Y').' 00:00:00'));
    $first_date = strtotime(date('m/01/Y 00:00:00',
      strtotime('-22 month', $last_date)));
    $date_increment = ($last_date - $first_date) / (55);

    // Parseamos la URL
    $url_parsed = parse_url(html_entity_decode($chart_url));
    parse_str($url_parsed['query'], $params);

    /* Cada división horizontal es 1/3 de la cota máxima. Obteniendo
      la mínima, multiplicamos por 3, y por M o por K (Depende), y
      dividimos entre la resolución, que es de hasta 61 posiciones.
      Este valor será el factor que defina cada incremento. El error
      cometido será la mitad del incremento */
    preg_match_all('/t (\d+\.?[0|5]?) (K|M)/i',$params['chm'],$cota);
    $rango = $cota[2][1]=='M' ? 1000000 : 1000;
    $inc = (3*min($cota[1])*$rango)/61;

    // Obtenemos el Array de datos
    preg_match('/([^,]+)$/i', $params['chd'], $orig);
    $data = Array();

    // Y finalmente, asignamos los valores al array de retorno
    $size = strlen($orig[1]);
    for($i=0; $i<$size;$i++) {
      $index = date('Y-m-d', $first_date + $date_increment*$i);
      $value = number_format($chdata[$orig[1][$i]]*$inc,0,',','.');
      $data[$index] = $value;
    }
    $data['Error'] = '&plusmn; '.number_format($inc/2, 2, ',', '.');

    return $data;
  }</pre>
<p>Como véis es muy sencillo. Si quitamos los comentarios y lineas partidas se queda en sólo 19 líneas de código.</p>
]]></content:encoded>
			<wfw:commentRss>http://chusete.es/2009/03/05/bobapp-cifras-de-trafico-a-partir-de-google-trends/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
