domingo, 3 de junio de 2012

Trabajar con la API de twitter - ejercicio 2



Trabajar con la API de twitter - ejercicio 2

Los requisitos para realizar este curso son que conozcas mínimamente el lenguaje HTML, PHP, el protocolo FTP y haber visto el primer ejercicio.

En el ejercicio primero trabajamos con datos extraidos en formato XML ahora lo haremos en formato JSON que es el que utiliza la API de twitter.

Para el ejemplo he utilizado la búsqueda en twitter de MUSAC (ver quien dice MUSAC en twitter).

En el vídeo muestro como recuperar variables de una búsqueda de twitter y mostrar los resultados en pantalla o enviarnoslo por correo electrónico.

El código utilizado en el vídeo es el siguiente:

<?php

$url = "http://search.twitter.com/search.json?q=musac&rpp=2";
$data = get_data($url);
$obj = json_decode($data);

function get_data($url){
$ch = curl_init();
$timeout = 5;
curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch,CURLOPT_CONNECTTIMEOUT,$timeout);
$data = curl_exec($ch);
curl_close($ch);
return $data;
}

foreach ($obj->results as $item) {
$text = $item->text;
$usuario = $item->from_user;
$img = $item->profile_image_url;
$id = $item->id_str;

echo '@';
echo $usuario;
echo '<img src="'. $img .'" />';
echo ' : ';
echo $text;
echo ' ';
echo '<a href="http://twitter.com/' . $usuario . '/status/' . $id.'">enlace</a>';
echo '<br>';

$dest = "To: tumail@gmail.com\r\n";
$msg = "$usuario $text http://twitter.com/$usuario/status/$id";
$head = "From: Minipunk<yomismo@minipunk.com>\r\n";
mail($dest, "alerta", $msg, $head);
}

Te invito a que crees un archivo como este y lo pruebes utilizando tu correo electrónico.

Del mismo modo que te invito a modificar los valores que recibes, por ejemplo, en el apartado $msg colocar algo así:

$msg = "@$usuario: $text http://twitter.com/$usuario/status/$id" o variar el orden de estos y ver lo que recibes en el correo.

Para ejecutar este script cada cierto tiempo utilizaremos un cron que será el que ejecute el script por nosotros cada cierto tiempo, en el vídeo utilizo setcronjob.com que tiene versión gratuita.

Si utilizamos como palabra de búsqueda el nombre de una empresa recibiremos en nuestro correo los tweets de todo aquel que la mencione en twitter.

En el ejercicio 3 seguiremos a partir de aquí.

1 comentario :

  1. Ya me voy enterando del temita :) Gracias por la aportación ;))

    ResponderEliminar

Deja tu comentario.
Si sólo quieres mostrar tu nombre elige (Nombre/url) y deja en blanco el campo de url.