Comment créer un robot d'exploration personnalisé à l'aide de Colab et d'advertools
Publié: 2022-05-25Dans cette vidéo, nous allons parler de la façon dont nous pouvons créer notre propre robot d'exploration personnalisé en utilisant Google Colab, Advertools et quelques autres bibliothèques Python. Avant d'avoir peur ou de vous énerver, ne le faites pas. Respirez profondément. Ça va aller bien. Je ne prétends même pas être un codeur, mais ce que je fais plutôt bien, c'est copier et coller. Je sais que vous pouvez utiliser ce bouton Ctrl+C aussi bien que moi. Voyons comment nous pouvons créer notre propre robot d'exploration SEO personnalisé et comment nous pouvons le mettre en œuvre pour nous aider à résoudre certains problèmes uniques.
Ressources
- Accédez au Colab ici.
- En savoir plus sur Adtools ici.
Transcription vidéo :
Voyons comment nous pouvons créer un robot d'exploration personnalisé à l'aide de Google Colab, ainsi que d'Advertools, la bibliothèque Python.
Qu'est-ce qu'un SEO Crawler (Spider) ?
Les robots d'exploration sont des outils qui peuvent parcourir les pages d'un site Web comme le ferait un moteur de recherche, et cela nous aide à obtenir des informations SEO précieuses. Cela nous aide à voir le site Web, comme Google, Bing ou les autres moteurs de recherche verraient notre site. Il existe des outils qui font cela. Il existe un certain nombre d'outils qui font cela, le plus populaire est probablement Screaming Frog SEO Spider, et c'est un outil que nous aimons et utilisons tout le temps, mais parfois nous avons besoin d'une solution personnalisée.
Pourquoi créeriez-vous votre propre robot d'exploration ?
La plupart des robots d'exploration 'prêts à l'emploi' font des choses incroyables, mais parfois vous avez une question spécifique à laquelle il faut répondre et vous pouvez créer un robot d'exploration personnalisé afin de contrôler toutes les sorties. Vous n'obtenez que les données que vous voulez ou dont vous avez besoin. De cette façon, vous n'avez pas à être contraint par une configuration d'outil, mais vous pouvez exécuter une exploration rapide d'un site Web ou extraire une seule information ou extraire beaucoup d'informations et les organiser d'une manière différente, en utilisant Colab et Python.
Qu'est-ce qu'Adtools ?
Advertools est une bibliothèque Python qui permet de faire beaucoup de choses. Vous pouvez explorer des sites Web, générer des mots clés pour vos campagnes de marketing sur les moteurs de recherche, créer des annonces textuelles, analyser les SERP, obtenir des informations sur les publications sur les réseaux sociaux et bien plus encore. C'est une bibliothèque extrêmement flexible. Il fait beaucoup de choses sympas et est assez simple à utiliser.
Je ne me qualifierais pas de programmeur. Je dirais juste que je suis doué pour le copier-coller. Même si je ne suis pas un programmeur Python approfondi, j'ai pu tirer de nombreux avantages de l'utilisation d'un outil comme Advertools.
Ce que nous allons faire
C'est ce que nous allons faire dans cette vidéo.
- Créez un nouveau fichier Colab et installez Advertools
- Créer un robot d'exploration personnalisé à l'aide d'advertools
- Explorer et analyser le site Web et les données
- Visualisez certains de ces résultats en utilisant une autre bibliothèque Python appelée Plotly
- Exporter les données
Étape 1 : Créer un fichier Colab et installer Advertools
Google Colab est un outil qui vous permettra de faire un certain nombre de choses intéressantes. Il vous permet d'exécuter du code dans des cellules pour créer des tableaux, créer vos propres programmes, faire des choses personnalisées, de l'apprentissage automatique au référencement, et plus encore. Si vous ne l'avez jamais utilisé auparavant, son utilisation est gratuite et vous permet d'exploiter gratuitement la puissance de calcul de Google. C'est très cool donc je vous recommande fortement d'aller voir ça.
Si vous n'utilisez pas déjà CoLab, vous trouverez ici de nombreuses ressources intéressantes. L'une des choses que vous devez faire pour utiliser une bibliothèque en dehors de Python, c'est l'installation naturelle. Vous devez installer ce programme. La plupart du temps, vous utilisez une fonction appelée PIP et vous extrayez ensuite cette nouvelle bibliothèque. C'est un processus assez simple à utiliser.
L'une des choses que tous ces gars font, qui construisent ces programmes, c'est qu'ils vous montrent exactement comment le configurer dans leurs documents. Lisez donc toujours ces documents et cela vous permettra de comprendre : "Comment puis-je importer ces outils et les faire fonctionner pour moi-même ?"
Pour installer Advertools, nous allons utiliser cette ligne de code ici :
!pip install advertools
Une fois que vous avez mis le code ici dans le bloc cellulaire de CoLab, continuez et appuyez sur le bouton de lecture. Il exécutera ce bloc de code. Vous devriez voir quelque chose comme ça, où il installe le code et l'ensemble du package ici afin que nous puissions maintenant utiliser cette bibliothèque pour construire notre robot d'exploration. Une fois que vous voyez la coche verte, vous savez que c'est fait.
Étape 2 : créer un robot d'exploration personnalisé à l'aide d'Advertools
Ensuite, nous allons vouloir exécuter une nouvelle ligne de code.
import advertools as adv
from advertools import crawl
import pandas as pd
Vous pouvez continuer et appuyer sur le bouton de code ici et il remplira ce nouveau. Nous allons importer certaines parties spécifiques de la bibliothèque Advertools. Nous importons des outils publicitaires, nous importons la méthode de crawl. Nous importons également quelque chose appelé pandas. Pour ceux d'entre vous qui ne sont pas familiers avec Python, les pandas nous permettent de travailler avec nos données à l'intérieur de cadres de données, en créant essentiellement des tableaux dans Python.
Une fois que vous avez configuré tout cela, vous continuez et exécutez à nouveau votre code. Cela va importer toutes ces informations. Si nous construisons un crawl, vous remarquerez ici, qu'il parle de comment nous pouvons faire cela, comment nous pouvons importer ces crawls. Il existe quelques approches; vous pouvez importer des Advertools comme nous l'avons fait et exécuter cette ligne de commande, qui fera ce que nous faisons.
J'aime rendre Colab un peu plus facile à utiliser au cas où quelqu'un de mon équipe voudrait également en tirer parti. Nous allons faire quelque chose d'un peu différent de ce qu'ils montrent ici. Mais si vous suivez cette approche, vous réussirez et cela fonctionnera également.
site = "https://simplifiedsearch.net/" #@param {type:"string"}
crawl(site, 'simp.jl' , follow_links= True )
crawl_df = pd.read_json( 'simp.jl' , lines= True )
crawl_df.head()
Ce que nous allons faire est cette ligne de code. La première chose que nous faisons est de définir une variable et la variable va être le site Web que nous voulons explorer. En utilisant cette chaîne de type param, cela me donne une boîte ici, qui me permet ensuite de taper ici, quel site Web je veux explorer. Je peux mettre mon site web ici. Je peux mettre n'importe quel site Web ici et il définira cette variable pour moi. De cette façon, je n'ai pas à le taper ici. Je peux simplement le taper dans un formulaire et quelqu'un qui n'est pas aussi à l'aise avec le fait de cliquer à l'intérieur de la boîte de cellule pourrait simplement aller de l'avant ici et taper un côté.
Dans ce cas, nous allons utiliser notre site de recherche simplifié, simplement parce que nous l'utiliserions tout le temps. Nous allons continuer et le coller ici. Juste en dessous, nous suivons exactement les mêmes règles qu'ils établissaient ici. Nous utilisons Advertools.crawl, puis nous utilisons le site comme variable. Nous avons un fichier de sortie. Ensuite, nous voulons qu'il suive les liens du site Web.
Nous passons également à l'étape suivante, où nous définissons le cadre de données d'analyse, et nous lui disons d'ouvrir notre fichier de sortie car il va sortir en JSON. Les pandas vont lire le JSON et créer une trame de données pour nous. En fin de compte, je nous dis juste de montrer la tête de cette trame de données, pour s'assurer que tout fonctionne comme prévu. Une fois que nous avons suivi cette étape et exécuté cette cellule, nous allons explorer le site Web et effectuer un vidage de données ci-dessous et nous pourrons voir toutes les différentes fonctions de cette analyse.
Je vais continuer et diriger cette cellule. Cela peut prendre quelques minutes simplement parce qu'il exécute une exploration de l'ensemble du site Web. Une fois que nous aurons terminé, nous verrons comment nous pouvons tirer parti des données d'exploration pour extraire des informations spécifiques.
Étape 3 : explorer et analyser le site Web et les données
Maintenant, le site a exploré et vous pouvez voir que j'ai une liste d'URL, de titres, de méta descriptions, de points de vue, de jeux de caractères, de H1, de H2 et de H3. Toutes ces informations sont extraites dans ce cadre. Si vous voulez le voir un peu plus propre, vous pouvez appuyer sur ce bouton magique ici et Google va transférer ces données ici dans un cadre de données un peu plus facile à utiliser. J'ai un nombre total de colonnes ici de 266. C'est beaucoup de colonnes avec lesquelles je peux travailler.
Vous vous demandez peut-être ce qu'il y a dans toutes ces colonnes. Nous pouvons revenir ici aux outils publicitaires et vous pouvez voir tous les différents éléments. Il existe de nombreuses données d'exportation que nous pouvons examiner et extraire de nombreuses informations intéressantes.
Si nous voulons voir une liste de toutes les différentes colonnes dont nous disposons, nous pouvons exécuter ce code :

columns = list (crawl_df)
columns
Nous devons d'abord prendre les colonnes et en créer une liste. Nous allons utiliser la liste de codes, puis mettre des parenthèses, et à l'intérieur de leur crawl_DF, qui est le nom de notre bloc de données, et appeler les nouvelles colonnes de la liste. Ici, nous avons des colonnes, et nous exécutons cette cellule, et vous pouvez voir toutes ces différentes colonnes possibles. C'est pas mal d'informations, comme vous pouvez le voir, il recherche beaucoup d'informations.
Et si vous ne vouliez voir qu'une partie de ces informations ? Et si vous vouliez simplement obtenir tous les titres ou toutes les méta descriptions ou certaines des informations sur les balises H, ou peut-être vouliez-vous voir toutes les pages et le type de balisage schema.org que vous pourriez avoir dessus. C'est là qu'il est utile d'avoir quelque chose comme Advertools.
Supposons que nous voulions examiner les types JSON-LD sur nos pages.
json_df = crawl_df[[ 'url' , 'jsonld_@type' ]]
json_df
Nous pouvons commencer avec un nouveau code. Continuons et créons une nouvelle trame de données appelée JSON-DF. Nous voulons obtenir des informations à partir de notre base de données d'origine. La première chose que nous allons vouloir faire, permettez-moi de descendre un peu ici pour faciliter l'exploration de tout le monde, _DF. Nous allons utiliser une parenthèse et une autre parenthèse.
La première chose que nous voulons extraire est l'URL. Nous savons que l'URL est importante car nous devons connaître toutes les pages de notre site, toutes les URL. La prochaine chose que nous voulons faire est de trouver le type JSON. Nous pouvons revenir à cette liste et nous pouvons utiliser le type JSON, le copier et dire, je veux aussi connaître le type JSON. Je vais continuer et garder cela cohérent, de cette façon nous suivons les meilleures pratiques. Que faisons-nous dans cette petite ligne ici? Nous avons dit "créer une nouvelle trame de données" et utiliser les données de notre base de données d'origine, de notre trame de données d'origine et retirer uniquement les URL et les types JSON-LD.
Si je lance ceci, cela va créer une nouvelle trame de données avec juste ces informations. Pour voir ces données, je peux simplement continuer, mettre JSON_DF, créer une nouvelle cellule et appuyer sur Entrée. Cela me donne une liste de toutes mes pages et le type de balisage associé à ces pages spécifiques. Cela peut être très utile si vous voulez chercher rapidement et trouver tous les JSON sur votre site Web, quels types vous avez et quel balisage vous avez.
De plus, avez-vous des pages qui manquent de balisage ? Vous pouvez les identifier rapidement. Nous avons ces nouvelles données où nous avons toutes nos URL et nous avons tous nos types JSON-LD dont nous savons qu'ils existent sur cette page.
Étape 4 : Visualisez les résultats
Disons que nous voulons créer un rapport ou un graphique rapide à montrer à un client ou à quelqu'un d'autre, ou la quantité d'informations et de données que nous avons ajoutées à ce site pour eux et les différents types de celui-ci.
La première chose que je dois faire est de compter tous les différents types de balisage qui ont été ajoutés, puis je peux le visualiser. Commençons par compter cela et créons un nouveau bloc de données. J'ai déjà créé ce code et je vais vous guider à travers elle:
json_counts = json_df[ 'jsonld_@type' ].value_counts()
json_counts = json_counts.reset_index()
json_counts
C'est ce qu'on appelle les comptages JSON. Il s'agit d'un nouveau bloc de données. Nous prenons les données de la colonne JSON-LD ici. Nous lui demandons de compter les valeurs uniques qui se trouvent dans cette colonne. Lorsque j'exécute ce code et que je lui dis de le sortir, vous verrez que toutes ces informations sont comptées.
Ce qu'il fait, c'est qu'il me donne cette erreur parce qu'il trouve des zéros ou des NAS dans la liste. Ce n'est pas grave, car vous verrez dans une seconde que nous avons obtenu cette information ici. Voici tous les différents types de balisage et tout a été présenté pour nous.
Vous remarquez également que cela ne ressemble pas tout à fait à un bloc de données comme ici. Nous devons réindexer ce bloc de données, ou cette variable, dans un bloc de données pour qu'il fonctionne correctement. Nous allons continuer et donner notre trame de données et exécuter ce code :
json_counts = json_counts.reset_index()
Lorsque nous exécutons ceci, vous verrez que nous avons une trame de données. Nous avons l'indice, qui est le terme. Ensuite, nous avons le type JSON-LD et son nombre. Nous n'avons toujours pas de graphique. Nous avons encore juste une autre trame de données. Que devons-nous faire pour transformer ce bloc de données en une visualisation ou un graphique ? Nous allons utiliser quelque chose appelé Plotly.
Plotly est une autre bibliothèque, très similaire à Advertools que nous pouvons utiliser pour créer des visualisations, et plus précisément, nous allons utiliser Plotly express. La première chose que nous devons faire est d'installer Plotly, nous allons de l'avant et faisons PIPinstallPlotly, je vais exécuter cette cellule. Il a déjà été installé dans cette feuille de travail, mais ça va. Comme vous pouvez le voir, il nous dira qu'il est déjà installé, déjà satisfait. Nous sommes prêts à partir.
Prenez ce code que nous venons de copier ici et collez-le dans notre robot d'exploration. Nous n'avons pas besoin de celui du milieu car ce sont des données que nous n'utilisons pas. Nous utilisons nos propres données. Nous devons importer Plotly express en tant que PX, et nous devons connecter notre nouvelle base de données ici afin d'obtenir les bonnes informations dans notre graphique.
! pip install plotly
import plotly.express as px
fig = px.bar(json_counts, x='index', y='jsonld_@type')
fig.show()
Notre trame de données s'appelait JSON counts. Sur notre X, nous allons utiliser l'index et sur le Y, nous allons utiliser le type JSON. Pourquoi ai-je choisi ceux-là ? L'index est là où se trouvent les mots. Nous voulons les avoir sur le X, puis le décompte est sur JSON-LD @type, et ce sera notre Y, qui nous dira combien il y en a dans chacune de ces colonnes. Nous allons continuer et mettre cela ici. Assez simple. Et puis fig.show montrera ce graphique. Alors maintenant, nous avons tous nos différents types ici, et ici, nous avons les différentes quantités de chaque type dans un joli graphique.
Si vous souhaitez le partager, vous pouvez le télécharger au format PNG, et Plotly le téléchargera maintenant sur votre ordinateur. Vous pouvez prendre cela et dire : "Nous avons mis autant de balises sur ces nombreuses pages." Une façon assez cool de le visualiser rapidement.
Étape 5 : Exporter les données
Cependant, que se passe-t-il si nous voulons télécharger toutes ces données et les utiliser, peut-être dans des feuilles Google ou autre chose ? Eh bien, vous pouvez aussi le faire pour le faire. Nous avons juste besoin d'utiliser une ligne de code de plus et nous devrions être prêts à partir. Supposons donc que nous allons télécharger ce tableau ici avec toutes les pages de notre site Web et le type JSON-LD. Nous pouvons aller de l'avant avec cette cellule ou toute autre cellule de votre choix, puis nous allons créer une nouvelle ligne de code.
Nous devons utiliser quelque chose de Google Colab appelé fichiers d'importation. C'est la première chose que nous allons faire. Ensuite, nous allons trouver cette trame de données, qui est JSON-DF. Nous allons ajouter ceci ci-dessous et dire .2_CSV, puis nous allons lui donner un nom. Nous pouvons appeler cela JSON_DF.CSV. Une fois que vous avez saisi ce code, vous avez créé votre fichier CSV. Si je regarde ici dans mon dossier, vous allez voir le fichier ici.
À partir de là, je pourrais simplement continuer et le télécharger, ou je pourrais mettre une ligne de code ici qui nous aide à le télécharger encore plus rapidement. Je pourrais dire files.download, puis j'appelle ce fichier, que je viens de créer, et j'ai demandé à Colab de le télécharger directement pour moi. Quand je lance cette cellule, il va télécharger ce fichier et je l'ai ici. Je peux continuer, cliquer sur ouvrir, et maintenant j'ai ce fichier CSV que je peux faire ce que je veux avec n'importe quel type d'outil de feuille de calcul que j'ai. Je peux également voir ceux qui manquent peut-être de balisage.
Voilà. Nous sommes allés de l'avant et nous avons créé notre propre crawler personnalisé. Nous avons extrait des données personnalisées. Nous avons visualisé ces données et nous les avons téléchargées pour les utiliser dans d'autres programmes. Nous avons fait tout cela, et je ne suis pas un programmeur informatique, je n'essaie même pas de faire semblant d'en être un. Comme je l'ai déjà dit, je ne suis bon qu'en copier-coller. Vous aussi, vous pouvez comprendre ces choses.
Lorsque vous avez des questions, il y a toujours des solutions intéressantes. Si vous êtes prêt à essayer quelque chose de nouveau et de différent, je vous recommande fortement de jouer avec Colab. Il existe de nombreuses ressources intéressantes. Il y a beaucoup de gens qui sont bien plus intelligents que moi et qui font des choses bien plus étonnantes dont j'ai beaucoup appris et qui m'ont aidé dans mon jeu marketing, mes recherches, mon exploration et bien plus encore.
Si vous avez des questions sur ce que nous avons fait aujourd'hui, veuillez commenter ci-dessous. Je vais également donner accès à ce fichier CoLab spécifique et je partagerai même étape par étape le code que nous avons utilisé en cours de route. Merci beaucoup d'avoir regardé. N'oubliez pas de vous abonner et jusqu'à la prochaine fois, bon marketing.