Capturar número de tweets.
Capturar número de tweets.
Hola,
He probado capturar el número de tweets de una página de Twitter con las funciones de IE pero no da el resultado esperado.
Cuando miro el código HTLM de la página, no localizo las etiquetas de "TWEETS" o "SEGUIDORES", únicamente los enlaces.
Agradecería cualquier sugerencia para resolver el tema.
#include <IE.au3>
$oIE=_IECreate("https://twitter.com/#!/el_pais")
$Tweet = _IEGetObjByName ($oIE, "tweet_stats")
MsgBox(0, "TWEETS", $Tweet)
Saludos.
He probado capturar el número de tweets de una página de Twitter con las funciones de IE pero no da el resultado esperado.
Cuando miro el código HTLM de la página, no localizo las etiquetas de "TWEETS" o "SEGUIDORES", únicamente los enlaces.
Agradecería cualquier sugerencia para resolver el tema.
#include <IE.au3>
$oIE=_IECreate("https://twitter.com/#!/el_pais")
$Tweet = _IEGetObjByName ($oIE, "tweet_stats")
MsgBox(0, "TWEETS", $Tweet)
Saludos.
- Chefito
- Profesional del Autoit
- Mensajes: 2035
- Registrado: 21 Feb 2008, 18:42
- Ubicación: Albacete/Cuenca (España)
Re: Capturar número de tweets.
Puffffff, he visto el código javascript de la página que carga esos Tweets y es muy extenso. Si lo quisieses hacer directamente seguramente tendrías que averiguar que hace y ejecutar las funciones javascript que te interesen.
Otra forma es la que te voy a mostrar. Es esperar a que carge los Tweets en la página con un bucle que busque un texto específico que solamente salen en los Tweets para luego leer el texto de la página. Entonces verás que ya salen los Tweets. Te he puesto un ejemplo que te dice el número de Tweets que te aparece en la página. Si quieres sacar los textos es facil. Solamente debes tratar estos y coger lo que te interese.
Saludos.
Otra forma es la que te voy a mostrar. Es esperar a que carge los Tweets en la página con un bucle que busque un texto específico que solamente salen en los Tweets para luego leer el texto de la página. Entonces verás que ya salen los Tweets. Te he puesto un ejemplo que te dice el número de Tweets que te aparece en la página. Si quieres sacar los textos es facil. Solamente debes tratar estos y coger lo que te interese.
Código: Seleccionar todo
#include <IE.au3>
$oIE=_IECreate("https://twitter.com/#!/el_pais")
Do
Sleep(100)
$textWeb=_IEBodyReadText($oIE)
Until StringInStr($textWeb,"RetwitteadoRetwittear")
ConsoleWrite($textWeb)
$numTweets=StringRegExp($textWeb,"RetwitteadoRetwittear",3)
MsgBox(0,"Número Tweets en página Web",UBound($numTweets))
Cita vista en algún lugar de la red: En este mundo hay 10 tipos de personas, los que saben binario y los que no ;).
Re: Capturar número de tweets.
Hola. Hace días que no estoy por el foro....
Respecto a la obtención de tweets, yo usaría búsqueda con expresiones regulares.
Los titulares parece que están contenidos entre:
<span class="entry-content"> y <a href="
Para ellos se puede utilizar la expresión regurlar:
<span class="entry-content">(.*?)<a href="
Aunque habría que depurar porque si hay enlaces dentro del mensaje puede que no aparezca todo, o quizás código que no es sólo texto.
¡Saludos!
Respecto a la obtención de tweets, yo usaría búsqueda con expresiones regulares.
Los titulares parece que están contenidos entre:
<span class="entry-content"> y <a href="
Para ellos se puede utilizar la expresión regurlar:
<span class="entry-content">(.*?)<a href="
Aunque habría que depurar porque si hay enlaces dentro del mensaje puede que no aparezca todo, o quizás código que no es sólo texto.
¡Saludos!
Re: Capturar número de tweets.
Gracias @Chefito, @Jamaro por vuestras respuestas.
Abundo un poco más en el planteamiento del problema, que tal como lo expresé creo que no queda claro.
Me interesa capturar el "número" de TWEETS y SEGUIDORES que se muestra en cualquier página de Twitter.
Con "Web Developer", obtuve la información que se muestra en el recuadro amarillo, pero ahí ya me quedo atorado y no sé cómo utilizar las funciones de IE para obtener el dato directamente, si es que es posible.
Saludos!
Abundo un poco más en el planteamiento del problema, que tal como lo expresé creo que no queda claro.
Me interesa capturar el "número" de TWEETS y SEGUIDORES que se muestra en cualquier página de Twitter.
Con "Web Developer", obtuve la información que se muestra en el recuadro amarillo, pero ahí ya me quedo atorado y no sé cómo utilizar las funciones de IE para obtener el dato directamente, si es que es posible.
Saludos!
Re: Capturar número de tweets.
Pues sí entendí mal.
En ese caso, a mí me aparece la pantalla de otra manera (no soy usuario registrado de Tweeter) pero el número de "seguidores" está en una cadena así:
<span id="follower_count" class="stats_count numeric">197,297 </span>
Así que con expresiones regulares, una vez recuperado el texto de la página sería:
<span id="follower_count" class="stats_count numeric">(.*)</span>
Espero que ahora sí te sirva.
En ese caso, a mí me aparece la pantalla de otra manera (no soy usuario registrado de Tweeter) pero el número de "seguidores" está en una cadena así:
<span id="follower_count" class="stats_count numeric">197,297 </span>
Así que con expresiones regulares, una vez recuperado el texto de la página sería:
<span id="follower_count" class="stats_count numeric">(.*)</span>
Espero que ahora sí te sirva.
- Chefito
- Profesional del Autoit
- Mensajes: 2035
- Registrado: 21 Feb 2008, 18:42
- Ubicación: Albacete/Cuenca (España)
Re: Capturar número de tweets.
Eso es otra cosa. Te digo lo mismo. Esa parte de la página parece que la genera un código javascript. Como el anterior, parece muy extenso y muy lioso. Si lo quieres hacer directamente y calentarte la cabeza ya sabes.
Si quieres hacerlo de la forma facil, pues lo haces de la forma anterior (ya lo expliqué en el post anterior).
El código sería algo así:
Saludos.-
Si quieres hacerlo de la forma facil, pues lo haces de la forma anterior (ya lo expliqué en el post anterior).
El código sería algo así:
Código: Seleccionar todo
#include <IE.au3>
$oIE=_IECreate("https://twitter.com/#!/el_pais",0,0)
Do
Sleep(100)
$textWeb=_IEBodyReadText($oIE)
Until StringInStr($textWeb,"@el_pais")
;~ ConsoleWrite($textWeb)
$numTweets=StringRegExp($textWeb,"Cancelar (.*?) Tweets",3)
$numSeguidores=StringRegExp($textWeb,"\n(.*?) Seguidores",3)
MsgBox(0,"Número Tweets en página Web",$numTweets[0] & " Tweets" &@cr& $numSeguidores[0] & " Seguidores")
Cita vista en algún lugar de la red: En este mundo hay 10 tipos de personas, los que saben binario y los que no ;).
Re: Capturar número de tweets.
OK. Gracias por las respuestas y compartir.
Con el código de Chefito queda resuelto el tema ya que captura perfectamente todos los datos... Bueno, como siempre....genial!!
Saludos
Con el código de Chefito queda resuelto el tema ya que captura perfectamente todos los datos... Bueno, como siempre....genial!!
Saludos