Dans la foulée de l’article sur l’analyse des logs serveur d’hier, je vous propose aujourd’hui un script bash vous permettant d’identifier les pages de votre site non crawlés par Googlebot.

Plus précisément, nous allons chercher les pages pour lequel Google nous as envoyé du trafic, mais sur lequel Googlebot ne passe plus.

Ces pages sont particulièrement critiques, si Googlebot ne passe plus, la page risque à terme d’être déclassée voire désindexée. La page ne reçoit probablement pas assez de jus, elle est peut-être trop profonde. C’est un indice d’un problème de structure sur votre site.

Le fonctionnement du script est assez simple, on récupère d’abord l’ensemble des pages qui ont reçu de la visite depuis Google, puis pour chacune d’elles, on regarde si Googlebot est passé dessus.

Pour utiliser ce script, vous devez avoir accès à une console linux (je pense que ça fonctionne également sur une console mac).

Créez le fichier, nommez le googlebot.sh par exemple, et copiez le code suivant

#! /bin/bash
 
if test $# -eq 0; then
	echo Veuillez passer le fichier log en paramètre
	exit 1
fi
 
more $1 | grep www.google | grep -v Googlebot | awk {'print $7'}  | sort | uniq > liste_url.txt
 
while read line  
do   
 
   var=`awk {'print $0'} $1 | grep $line | grep Googlebot | sort | uniq | wc -l`   
 
   if [ $var = 0 ]; then
		echo $line	
	fi
 
 done < liste_url.txt

Donnez les droits d’exécution au script

chmod +x googlebot.sh

Puis exécutez le en passant votre fichier log en paramètre

./googlebot.sh watussi.log

Vous allez avoir la liste des URLs posant problème, à vous d’analyser le pourquoi du comment !

Vous pouvez simplement copier cette liste dans un fichier txt en procédant ainsi

./googlebot.sh watussi.log > resultats.txt

Je suis loin d’être un expert en script bash, si quelqu’un a des remarques, je suis preneur !