Pregunta

Digamos que desea crear un BlogEditor muy simple y, una de sus ideas, es hacer lo que hace Live Writer y preguntar solo la URL del Blog de la persona.¿Cómo puedes detectar qué tipo de blog es?

La detección básica se puede realizar con la propia URL, como "http://miblog.blogger.com" etc.¿Pero qué pasa si está autohospedado?

Lo que más me interesa es cómo hacer esto en Java, pero esta pregunta también podría usarse como referencia para cualquier otro lenguaje.

¿Fue útil?

Solución

Muchos (¿la mayoría?) blogs tendrán una metaetiqueta para "generador" que enumerará el motor del blog.Por ejemplo, un blog de blogger contendrá la siguiente metaetiqueta:

<meta name="generator" content="Blogger" />  

Mi blog Subtext muestra la siguiente metaetiqueta generadora:

<meta name="Generator" content="Subtext Version 1.9.5.177" />  

Esta metaetiqueta sería el primer lugar donde buscar.Para los blogs que no establecen esta metaetiqueta en la fuente, tendría que recurrir a la búsqueda de patrones para determinar el tipo de blog.

Otros consejos

Algunos blogs proporcionan una metaetiqueta Generador, p.Wordpress: puede averiguar si hay alguna excepción a esto.

Tendrás que tener cuidado al detectarlo, Google me sorprendió con esta línea:

<meta content='blogger' name='generator'/>

Las comillas simples son una blasfemia.

Para determinar otros patrones a buscar al determinar el motor de blogs (para aquellos que no tienen una metaetiqueta de generador), básicamente simplemente buscarías en la fuente para determinar algo específico para ese tipo de blog.También necesitarás comparar esto entre varios blogs de ese tipo, ya que querrás asegurarte de que no sea algo específico del aspecto o tema que se utiliza únicamente en el blog.

Otra idea sería leer los documentos de los distintos motores de blogs comunes para saber cómo descubrir la ubicación de sus rutas a cosas como MetaWebLog API, etc.IIRC, Live Writer tiene soporte integrado para los tipos más comunes, el resto están categorizados como "Blog API MetaWebLog" o algo así.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top