Comment supprimer les requêtes marques dans un fichier de mots-clés avec R ?
En tant que professionnel du (DATA) SEO, vous avez probablement envie d’automatiser au maximum votre stratégie et c’est exactement ce qu’un langage de programmation comme le R peut vous apporter. Si vous découvrez ce langage, je vous invite à relire mon article sur R et le SEO.
Vous verrez ici 2 façons de nettoyer sa liste de mots-clés SEO :
– Supprimer les lignes contenant les mots-clés non-conformes : si le mot-clés est contenu dans une chaine de caractère, la ligne complète sera supprimée.
– Supprimer les lignes contenant les mots-clés exacts.
N’hésitez pas à suggérer d’autres idées de traitements en commentaire !
Je vais vous donner le code pour automatiser ces 2 tâches qui peuvent parfois être chronophages. Vous verrez, rien de très compliqué et un bon gain de temps à la clé !
Supprimer les lignes contenant les mots-clés non-conformes
Cette manip est très utile pour supprimer les requêtes marques (de votre site ou celles de concurrents) ou encore pour exclure tous les mots-clés qui contiendraient un terme non-représentatif de votre offre (par exemple le terme « gratuit » si la gratuité ne fait pas partie de votre business model).
Pour l’exemple, nous allons utiliser un export des mots clés associés venant de SEMrush (Analyse de mots-clés > Mots clés associés) que vous pouvez récupérer simplement via l’API de SEMrush. Notez que la liste de mots-clés peut aussi venir de différentes sources (voir mon article « Utiliser l’API de la Search Console Google avec R« )
#1. Ouvrir le fichier SEMrush
dataset <- read.csv2("drone-phrase_related-fr.csv", sep=",")
Passons à la création d’une liste de termes à supprimer (appelée ici « competitor_list ») puis lançons la suppression.
Le script va alors chercher dans notre fichier de mots-clés (dataset) toutes les lignes dont la colonne Keyword contiennent un terme de notre « competitor_list » et les supprimer.
#2. Création de la liste de termes à supprimer competitor_list <- paste(c("parrot", "dji"), collapse = '|') #3. Suppression des lignes contenant les mots-clés non-conformes library(dplyr) clean_dataset <- dataset %>% filter(!grepl(competitor_list, Keyword))
C’est fini pour cette première étape de préparation de votre fichier de mots-clés.
Passons à la suite.
Supprimer des mots-clés exacts
À force de travailler sur le même secteur d’activité, il est probable que vous finissiez par remarquer la présence récurrente de certains termes parasites dans vos données. Les fonctions suivantes permettent justement de supprimer les lignes qui contiennent exactement ces termes, grâce à l’ajout d’une REGEX, ou expression régulière (matérialisée ici par les symboles ^ et $)
#4. Création de la liste de termes parasites
library(purrr)
#Prefixe
parasites_list <- purrr::map_chr(parasites_list, ~ paste0("^", .))
#Suffixe
parasites_list <- purrr::map_chr(parasites_list, paste0, "$")
#Ajout du OR
parasites_list <- paste(parasites_list, collapse = '|')
On peut maintenant supprimer les termes parasites :
#5. Suppression utilisant une REGEX
clean_dataset2 <- clean_dataset %>%
filter(!grepl(parasites_list, Keyword))
Pour contrôler ce que nous venons de faire, nous pouvons maintenant afficher les lignes supprimées.
#6. Afficher les lignes supprimées
library(dplyr)
removed_rows <- setdiff(dataset,clean_dataset2)
removed_rows
Encore plus de scripts pour le SEO !
Maintenant que vous avez nettoyé votre liste de mots-clés, vous pouvez passer à l’étape suivante : clusteriser automatiquement vos mots-clés.
Vous souhaitez accélérer votre apprentissage de la data science ? Je vous invite à regarder du côté des formations Labs on Mars.
Pour recevoir d’autres scripts R, abonnez-vous à ma newsletter et suivez-moi sur Twitter.
j’ai utilise le regex sur GA pour filtrer la liste de mots-clés .
Passionnant 🙂 Je possède une liste de 30K mots clés « interdits », j’ai peur que ça fasse beaucoup pour ma « parasites_list », si je suis ton modèle. Comment puis-je faire autrement ?
J’ai également remarqué qu’on ne peut pas mettre de mots clés séparés par un espace dans la « parasites_list ».
« motclé » passe, mais pas « mot clé »