

Peut-être que ca vous est déjà arrivé: vous mentionnez dans un tweet un certain mot, quelques minutes après, vous recevez un mail, quelqu'un que vous ne connaissez pas directement vous suit sur twitter. Ce compte en question parle beaucoup de ou a comme sujet ce mot clé que vous venez de mentionner. Personnellement, j'ai déjà eu le coup avec 'failwhale' ou encore 'twhisky'.
M'était donc venu l'idée de faire pareil avec les mots-clés 'bruxelles', 'brussel' et 'brussels' pour le compte bxlblog. N'importe qui qui mentionnerais ces mots et qui a ses tweet ouverts publiquement serait ainsi donc retrouvé et suivi par le compte twitter de bxlblog. Libre à eux d'aussi suivre ce compte en retour, s’ils sont intéressés.
Comment faire? Simple: via la recherche de twitter. Une requête HTTP et ensuite parser aux expressions régulières le contenu renvoyé pour en extraire les pseudos. Ensuite, envoyer une commande à Twitter pour suivre cette personne et le tour est joué. Le script est de préférence à exécuter dans un cron, par exemple toutes les 5 minutes.
Pour mettre en place ce script, il vous faut 2 choses: une machine Linux avec accès shell en mode admin (j'utilise Ubuntu). Il faut aussi installer le package curl, qui permettra d'envoyer les requetes vers twitter:
sudo apt-get install curl
Faites ensuite un petit coup de ‘nano /home/emich/twittersearch.sh’ et collez y le script suivant, en modifiant bien entendu le login et mot de passe par vos propres donnez twitter :
#!/bin/bash
/usr/bin/wget -O /home/emich/twittersearchresult http://search.twitter.com/search?q=bruxelles+OR+brussels+OR+brussel
NAMES=`/bin/cat /home/emich/twittersearchresult`
for value in $NAMES
do
if [[ $value =~ home\?status\=@([^\"]*)\" ]];then
i=1
n=${#BASH_REMATCH[*]}
while [[ $i -lt $n ]]
do
/usr/bin/curl --basic --user twitteruser:twitterpassword --data status="follow ${BASH_REMATCH[$i]}" http://twitter.com/statuses/update.xml
let i++
done
shift
fi
done
Ensuite, modifiez les permissions, afin que ce script puisse être executé :
chmod +x /home/emich/twittersearch.sh
Ajoutez-le ensuite à crontab :
crontab -e
Disons, toutes les 5 minutes :
*/5 * * * * /home/emich/twittersearch.sh
En fait c'est une base, on peut également le faire en PHP et autres langues.
