2008-08-25 16 views
2

Disons que vous voulez créer un BlogEditor mort simple et, une de vos idées, est de faire ce que Live Writer ne demander que l'URL des personnes Blog. Comment pouvez-vous détecter quel type de blog est-il?Comment détecter API qui blogue

La détection de base peut être faite avec l'URL elle-même, comme "http://myblog.blogger.com" etc. Mais que se passe-t-il si elle est auto-hébergée?

Je suis surtout intéressé sur la façon de le faire en Java, mais cette question pourrait aussi être utilisé comme référence pour toute autre langue.

Répondre

3

De nombreux blogs (la plupart?) Auront une balise meta pour "generator" qui listera le moteur de blog. Par exemple, un blog blogger contiendra la balise meta suivante:

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

Mon blog Subtext montre la balise méta générateur suivant:

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

Cette balise meta serait le premier endroit à regarder. Pour les blogs qui ne définissent pas cette balise META dans la source, vous devez rechercher des modèles pour déterminer le type de blog.

1

Certains blogs fournissent une méta-étiquette Generator - par ex. Wordpress - vous pouvez savoir s'il y a des exceptions à cela.

Vous devrez faire attention à la façon dont vous détectez bien, Google m'a surpris avec cette ligne:

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

Les guillemets simples sont le blasphème.

1

Pour déterminer les autres modèles à rechercher pour déterminer le moteur de blog (pour ceux qui n'ont pas de méta-balise de générateur), il vous suffit de parcourir la source pour déterminer quelque chose de spécifique à ce type de blog. Vous aurez également besoin de comparer cela sur plusieurs blogs de ce type, car vous voulez vous assurer que ce n'est pas quelque chose de spécifique à la peau ou au thème utilisé sur le blog seulement. Une autre pensée serait de lire les docs des différents moteurs de blogs communs pour savoir comment trouver l'emplacement de ses chemins vers des choses comme l'API MetaWebLog, etc. IIRC, Live Writer a un support intégré pour les types les plus courants , le reste est classé "MetaWebLog API Blog" ou quelque chose.