Référencement technique

Guide du débutant sur les API SEO

En avril 2010, Will Critchlow s’est lancé le défi d’apprendre suffisamment d’Appengine, Python, YQL et XPath en 2 heures pour créer un outil de référencement utile. L’article résultant décrivant le développement de l’outil m’a inspiré à commencer à regarder d’autres API liées au référencement, pour voir si je pouvais faire quelque chose de similaire.

Ce que j’ai trouvé était assez surprenant. Il existe de nombreuses API et bibliothèques utiles, à la fois fonctionnelles et liées à l’interface utilisateur, qui rendent le développement de votre propre outil beaucoup plus facile que prévu !

À l’aide d’un mélange d’API, j’ai développé un outil qui vous permet de comparer votre site Web à la concurrence pour un exemple de phrase de recherche. Mais plus sur l’outil plus tard – premièrement, voici comment il a été développé.

Où commencer

Maintenant, cela ne veut pas dire qu’un débutant complet sera capable de faire fonctionner quelque chose immédiatement – au minimum, vous aurez besoin d’une base de base en HTML et en programmation. J’ai choisi d’utiliser PHP comme noyau principal de l’outil car je l’ai trouvé assez facile à comprendre, ayant déjà utilisé Perl.

Donc, en supposant que vous soyez satisfait du HTML et confiant dans un langage de programmation Web tel que PHP, que devez-vous savoir d’autre ? Restez avec moi pendant que j’explique les deux concepts les plus importants pour vous aider à démarrer :

1) Appels API
Tous les appels d’API que j’ai effectués sont simplement des requêtes d’URL HTTP. En PHP, cela est géré par une bibliothèque appelée CURL. Vous pouvez tester un appel d’API en collant simplement l’URL dans une fenêtre de navigateur.

CURL a l’avantage de pouvoir déclencher de nombreux appels d’API en parallèle, puis d’attendre les réponses. Donc si vous avez 10 appels API à faire et que le plus long prend 2 secondes, le temps total ne sera que de 2 secondes. (Je n’ai trouvé cette méthode d’appel de CURL que tard dans le développement de l’outil, et cela a fait une énorme différence dans la vitesse des résultats !)

2) Réponses API
Les réponses de l’API prennent généralement l’une des trois formes suivantes :

a) XML – Langage de balisage extensible
b) JSON – Notation d’objet JavaScript
c) Images

Avec la plupart des API, vous avez le choix de renvoyer une réponse au format XML ou JSON (à l’aide d’un paramètre d’URL). Vous devez ensuite décoder cette réponse pour extraire les valeurs. En utilisant PHP, il existe de nombreux articles et tutoriels sur la façon de décoder ces deux réponses, ce qui donne des variables PHP de base.
La réponse inhabituelle ici est celle des images. Dans cet exemple, j’ai utilisé l’API Google Graph qui renvoie des graphiques à barres préformatés, des graphiques à secteurs, etc. sous forme de fichier image hébergé.

Une fois que vous avez une méthode d’appel des API, puis de décodage des résultats, un tout nouveau monde d’applications potentielles devient soudainement disponible !

Les API et bibliothèques utilisées

Les API utilisées dans cet exemple sont :

  • API de recherche Google
  • API SEOmoz
  • API de recherche Yahoo
  • API Bing
  • API SEO majestueuse
  • API Google Chart
  • API de mots-clés Alchemy
  • API de compétition
  • API Backtype
  • API Amazon Alexa
  • API Twitter
  • Réduire le Web

Les bibliothèques que j’ai utilisées sont :

  • PHP Simple HTML Dom – Analyser le code HTML
  • PHP Crawler – Explorer des sites Web à l’aide de CURL
  • JS-Cumulus Tag Cloud – Produisez des nuages ​​de tags 3D formatés basés sur des données de mots-clés
  • Onglets Flowplayer – Onglets animés AJAX
  • Accordéon Flowplayer – AJAX Pages coulissantes animées
  • Php-text-statistics – Analyse de lisibilité Flesch-Kincaid
  • Yahoo YUI – Effectue Crawl/Analysis puis renvoie les résultats dans une page AJAX

Une bonne source d’API de toutes sortes est le Web programmable. Ce site contient des informations sur des centaines d’API différentes et mérite d’être vérifié régulièrement car de nouvelles entrées sont ajoutées en permanence.

L’exemple d’application

Alors, qu’obtenez-vous lorsque vous combinez toutes ces API avec un peu de HTML et de PHP ? Eh bien, j’ai décidé de créer un outil qui prendra un exemple de site, ainsi qu’un exemple de phrase de recherche, puis de l’utiliser pour comparer différentes statistiques liées au référencement avec un site Web concurrent.

http://www.scotiasystems.com/seo-checker/runcheck.html

L’exemple donné est le site Web www.scotiasystems.com et le terme « web design nova scotia », bien que vous puissiez les remplacer par le site et la phrase que vous souhaitez analyser.

Tout d’abord, l’outil recherche des sites concurrents en fonction de la phrase de recherche, puis explore quelques pages sur chaque site. Dans le même temps, les API ci-dessus sont appelées en fonction des URL de site trouvées. Le code HTML est analysé et analysé pour les mots-clés, et les résultats de l’API sont formatés en tableaux et graphiques à l’aide de l’API Google Chart.

Analyser 3 à 4 pages sur 5 sites prend généralement environ 30 à 40 secondes au total. Il sera intéressant de voir comment le site se comportera lorsque cet article sera mis en ligne ! (J’ai mentionné l’outil dans un récent commentaire sur SEOMoz comme un test et il semblait bien faire face au trafic soudain, alors je croise les doigts !)

À l’aide des bibliothèques d’onglets et d’accordéon, les résultats sont séparés en pages associées, ce qui facilite l’exploration des statistiques individuelles (croyez-le ou non – pour chaque requête donnée, près de 400 tableaux, graphiques, nuages ​​​​de balises apparaissent dans la seule page HTML revenu!).

Pour le moment, l’outil est principalement centré sur l’anglais (désolé Gianluca) en raison des API appelées, mais je serais intéressé d’entendre les commentaires de quiconque l’utilise pour d’autres langues ?

Pourquoi utiliser AJAX ?

J’ai appris d’une expérience précédente que les pages PHP peuvent prendre un certain temps à se charger. Avec l’accent mis par Google sur la vitesse du site, cela devient un problème car avoir une page qui prend 30 à 40 secondes à charger affectera mon classement ! Ainsi, en utilisant le gestionnaire de connexion Yahoo et en chargeant dynamiquement les résultats dans AJAX, la page semble se charger instantanément sur Google.

Pour maintenir l’intérêt de l’utilisateur, j’utilise un widget Twitter gratuit qui affiche la diffusion en direct de tweets liés au référencement au fur et à mesure de l’exploration. J’ai essayé l’outil à tout moment de la journée et il semble y avoir un flux continu de tweets SEO, nuit et jour !

Coût/Performances

Toutes les API utilisées ici, à l’exception de l’API Amazon Alexa (qui est très bon marché !) sont libres d’utilisation dans certaines restrictions d’utilisation. Certaines API limitent soit le nombre d’appels que vous pouvez effectuer par jour, soit la fréquence à laquelle vous pouvez les appeler. Une fois que vous avez dépassé ces limites, vous devez commencer à payer les frais d’abonnement. L’outil que j’ai écrit est gratuit car je ne m’attends pas à atteindre ces limites, mais si je le fais, je devrai peut-être revoir et regarder une sorte de version payante.

Remarque : En raison des restrictions tarifaires sur certaines des API gratuites utilisées ici, l’outil pourrait en fait fonctionner deux fois plus rapidement s’il utilisait les API d’abonnement !

Conclusion

Alors voilà, pas vraiment les 2 heures que Will visait, plutôt 2 mois ! Cependant, maintenant que j’ai un moyen fiable d’appeler les API, de décoder la réponse et d’afficher les résultats, il devrait être simple de développer d’autres outils de référencement. J’espère que cet article vous incitera à vous lancer vous aussi !
J’ai parcouru certains des sujets ici, mais je serais heureux de vous conseiller sur la façon de développer vos propres outils si vous souhaitez entrer en contact ?



(Article traduit de moz.com)

Articles similaires

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Bouton retour en haut de la page