Existen varios métodos, pero algunos donde no sabes lo que estas haciendo y otros mejores, pero que necesitan de algún conocimiento sobre lenguajes de programación web. Explicare como hacer un poco de Hacking o Ingenieria inversa para crear un RSS (Really Simple Syndication) que en otras palabras, seria sindicar contenido web para compartir, de esta manera mantenerme informado sobre las publicaciones que hagan en cierta pagina web.

Es útil para aquellos que les gusta leer todas las noticias en un solo lugar o para aquellos que desen crear una interacción a tiempo real con otra aplicación, que este ultimo es mi caso. Si la pagina esta bien programada quiza puedes usar un programita que te extraiga y te cree un RSS, pero en caso contrario no te queda otra que usar el método que explicare en este post.

Les quiero contar que en un principio mi idea fue automatizar todas las noticias de la pagina de la universidad ya que su pagina es algo precaria, entonces siempre que necesitaba saber alguna información debía meterme en la pagina de la universidad también, en el grupo de facebook y es que se trata de una institución donde es abierta, es decir no da clases presenciales. Bueno con la llegada de los bots y los canales en Telegram, decidi hacer un canal de la universidad, ok voy al grano la pagina no tenia RSS y ese era el problema ya que no tenia ni la mínima intención de estar pendiente cuando saliera alguna noticia para publicarla en el canal, queria algo automatizado, en donde cada vez que algo se publicara en el grupo de facebook o en la pagina inmediatamente llegara al canal de telegram.

Vamos por pasos y poco a poco explicare lo que debes saber para crear tu RSS con exito.

 

  1. Hacemos click en Create New feed. Aceptamos los terminos.
  2. Colocamos la URL de la pagina a la cual le queremos crear un feed. En la codificacion podemos poner utf-8
  3. Al hacer click en Reload, saldra el codigo fuente de la pagina
  4. Debemos buscar el titulo de la noticia en el codigo fuente. Luego debemos analizar si todas las noticias vienen escritas de la misma forma. Lo que se quiere es hacer un codigo general que coincida con todas las noticias, es decir si la noticia tiene imagen, url, icono, debemos hacer un codigo que contenga todo, no importa para aquellas que no tenga alguna de estas cosas, igual las tomara.
  5. Para saber si vamos bien, en el campo Clipped Data podremos ver que es lo que se supone que va salir, si te sale codigo html en ese campo, entonces vas mal, debes jugar con los {%} y {*}.
  6. Llenar el RSS feed properties, colocar el nombre, la url de la pagina y una descripcion.
  7. En cliped Data nos saldran varios item dependiendo de la informacion de la pagina que estes hackiando, como por ejemplo {%1},{%2},{%3}, debemos tratar de que solo hallan 3 item para que en RSS item propedades colocar en el orden que desemos los “{%1},{%2},{%3}”. Si hay mas simplemente ponemos en cada espacio los item, si queremos algo mas automatizado debemos trabjar con la opcion Merge all items into single one, optionally applying global template. Por ejemplo si en item title colocamos {%1}, es porque efectivamente ese item es el titulo y asi con los demas espacios a llenar.

 

Screenshot_20170408_213514
De esta forma podemos llenar las propiedades del feed en caso de haber varios titulos o informacion en varios item que queremos colocar en un solo campo.

 

En Item (repeatable) Search Pattern*: encontraremos un símbolo como este [?], que es la ayuda. En esta parte debemos tipear la sintaxis que se repite, es decir debería haber un link, una descripcion, una imagen, como mínimo. Procedemos a buscar en el codigo fuente de la pagina, para facilitar la búsqueda debemos tener conocimiento de alguna publicación, entonces si conocemos el titulo de una de las ultimas publicaciones hacemos uso de las siguientes teclas ctrl F a la vez y en la parte inferior del navegador saldrá un campo para escribir, ahí pondremos el titulo de la publicacion, usamos las flechas que estan al lado donde escribimos el titulo para movernos en el codigo fuente de la pagina y asi encontrar esa linea que es el titulo. Una vez encontrada esa linea, debemos distinguir el enlace, la descripcion y lo que tenga, vamos a encontrar que todas las publicaciones tienen lo mismo, pero lo importante es encontrar el inicio y el fin de cualquiera, no importa cual sea porque todas deberían ser iguales, en caso de que no lo sea busca la que esta mas cargada de cosas, ya explicare que quiero decir con esto.

Es necesario hacer click en la ayuda, en donde se mostrara lo siguiente

Screenshot_20160809_105151

Haga click para saber mas: http://feed43.com/context-help.html?t=item_pattern

<b>              Representa un texto hacia el cual se llama la atención para propósitos utilitaros.  No confiere ninguna importancia adicional y no implica una voz alterna.

<h2>            Los elemento de cabecera  implementan seis niveles de cabeceras de documentos; <h1> es la de mayor y <h6> es la de menor impotancia. Un elemento de cabecera describe brevemente el tema de la sección que introduce.

<a>              Representa un hiperenlace , enlazando a otro recurso.

Mas información: https://developer.mozilla.org/es/docs/HTML/HTML5/HTML5_lista_elementos

En el ejemplo que dan sale que dentro de las etiquetas <h2> colcocan {%}, es decir que donde va el titulo se debe quitar y se coloca {%}, donde halla una url se debe poner {%} , pero antes y después del mismo se coloca {*} y donde halla texto se coloca {%}

Si hay un color, tamaño de letra que se repite pero en en algunos casos son cambiados debes poner {%}.  En el campo Item (repeatable) Search Pattern debes poner los items que se repite, lo que no se repite no saldra, entonces debemos tener cuidado, porque aquello que no se repite debemos colocarle {%}.

  • {%} — ‘parameter‘ macro, which matches any text sequence and adds it to search results
  • {*} — ‘skip‘ macro, which matches any text sequence, and skips it (doesn’t add it to search results)
  • {_} — ‘white-space‘ macro, which matches any sequence of white-space characters including line-breaks, and skips it
  • {|} — ‘line-break‘ macro, which matches a sequence of line-breaks, and skips it

NOTA: No dejar espacios porque va dar errores.

 

Ejemplo1:

Este es un ejemplo que da la pagina  http://feed43.com/understanding-patterns.html

 

..
&amp;amp;lt;span class="t"&amp;amp;gt;
&amp;amp;lt;span class="c"&amp;amp;gt;...
...[content goes here]...
...&amp;amp;lt;/span&amp;amp;gt;

&amp;amp;lt;span class="c"&amp;amp;gt;...
...[content goes here]...
...&amp;amp;lt;/span&amp;amp;gt;
&amp;amp;lt;span class="t"&amp;amp;gt;&amp;amp;lt;/span&amp;amp;gt;&amp;amp;lt;/pre&amp;amp;gt;
&amp;amp;lt;h1&amp;amp;gt;Weather in Washington&amp;amp;lt;/h1&amp;amp;gt;
&amp;amp;lt;pre&amp;amp;gt;&amp;amp;lt;span class="t"&amp;amp;gt;
&amp;amp;lt;/span&amp;amp;gt;
&amp;amp;lt;span class="c"&amp;amp;gt;...
...[content goes here]...
...&amp;amp;lt;/span&amp;amp;gt;
&amp;amp;lt;span class="t"&amp;amp;gt;&amp;amp;lt;/span&amp;amp;gt;&amp;amp;lt;/pre&amp;amp;gt;
&amp;amp;lt;div class="content"&amp;amp;gt;
UV Index: 1 Low

Wind: From SSE at 9 mph

Humidity: 69%

Pressure: 30.02 in.

Dew Point: 46&amp;amp;lt;span class="e"&amp;amp;gt;°&amp;amp;lt;/span&amp;amp;gt;F

Visibility: 10.0 miles&amp;amp;lt;/div&amp;amp;gt;
&amp;amp;lt;pre&amp;amp;gt;&amp;amp;lt;span class="t"&amp;amp;gt;
&amp;amp;lt;/span&amp;amp;gt;
&amp;amp;lt;span class="c"&amp;amp;gt;...
...[content goes here]...
...&amp;amp;lt;/span&amp;amp;gt;

 

Podemos crear el siguiente patron de busqueda

search pattern:

<h1>{%}</h1>{*}

{%}

{%} Esto significa : tomar todo lo que entre < h1 > y < / h1 > como un primer fragmento ( que se puede denominar como { % 1 } en la plantilla de salida) , luego tomar todo lo que entre < div class = “contenido” > y < / div > como segundo fragmento (denominado como { 2 } % ) .

Si aplicamos este patrón para el código HTML anterior , obtendremos la siguiente lista de fragmentos :
{ } = 1 % del tiempo en Washington
{ 2 } = % Índice UV : 1 Bajo
del viento: SSE De 9 mph
Humedad: 69 % Presión
: 30.02 en
Rocío: . 46 y el grado; F < br / > Visibilidad: 10.0 miles

Ahora podemos definir la plantilla de salida, que combina estos fragmentos juntos :
< B > { % 1} < / b > <br/> { % 2 }
Aquí { % 1 } se sustituye con el primer fragmento , y { %2 } – con el segundo .

De este modo , se obtiene el código HTML resultante:
< B > El tiempo en Washington < / b >
Índice UV : 1 Bajo
del viento: SSE De 9 mph
Humedad: 69 % Presión
: . 30.02 en < br / > rocío: 46 y el grado; F
Visibilidad : 10.0 miles

 

Ejemplo2:

Este es un ejemplo de un feed que hice…

Global Search Pattern:

{*} [‘{%}’,'<center><img src={%}

Item (repeatable) Search Pattern*:

[‘{%}’,'<center><img src={%} align=top width=10 height={%} border=0>{*} {%}{*}’,’_blank’]

Nota: cuando hay una noticias vieja usan uno, dos o tres “/”, entonces la idea es tomar un codigo que no contenga este simbolo.

 

Ejemplo3:

Otro ejempo que hice…

Este es el parrafo que se repite, no se repite tal cual en los demas casos, hay pequeñas modificaciones en los demas parrafos, pero bueno no quiero cargar esta entrada asi que solo pondre este parrafo:

<div align=”left”>{*}<span class=”style3″ align=”justify”>{%}</span>{*}<span align=”justify” class=”subtitulo”>{%}</span>{*}<span class=”notifecha”>{%} </span>{*}<span class=”Estilo2″>{%}</span>{*}<p class=”contenido”>{%}<a href={%}>{%}</a>{*}{%}</p>{*}

 

Global Search Pattern:

{*} [‘{%}’,'<center><img src={%}

Item (repeatable) Search Pattern*:

{*}<p><span class={*} align=”justify”>{%}</span><span align={*}class=”subtitulo”>{%}</span>{*}<p align=”center”><span class={*}>{%}</span>{*}<p class=”contenido”>Se le informa a todos los estudiantes regulares del lapso 2017-1, que seg&uacute;n <a href={%}</a> {%}</p>

 

Feedback con los creadores de FEED43 entra a este enlace

Me parece muy agradable el potencial de esta pagina, que ya tiene su tiempo disponible y además tenga esta opción de feedback. Bien parece una pagina con poca ayuda, en ingles y algo complicada de usar, pero si tienes conocimientos básicos de html, he ingles podra irte bien.

Si deseas comunicarte con FEED43 http://feed43.com/feedback.html

 

Fuente: http://feed43.com

Anuncios