Comment extraire par lot des numéros de téléphone depuis des pages Web ? Comment extraire les numéros de téléphone depuis un fichier de texte ou des chaînes de caractères ? Voilà une méthode très facile d’utiliser RegEx pour ce faire, et on dit franchement que c’est un tutoriel surtout destiné aux non-codeurs et débutants.
🤔 Qu’est-ce que Expression régulière
RegEx est l’abréviation de Regular Expression qui décrit le modèle d’une chaîne de caractères et qui est compréhensible par l’ordinateur. Donc, avec cette expression, nous pouvons localiser les données qui correspondent à ce modèle et ainsi récupérer les informations souhaitées.
“Une expression régulière (abrégée en regex ou regexp ; également appelée expression rationnelle) est une séquence de caractères qui spécifie un modèle de recherche.”
——Cité par Wikipedia.com
Pourquoi RegEx peut être utilisée pour extraire les numéros de téléphone depuis un long texte ?
On prend cet exemple : vous voulez extraire en une seule fois tous les adresses d’email d’un texte. Ce texte contient de nombreuses séries de numéros de téléphone qui s’éparpillent ici et là de manière aléatoire. Vous pouvez utiliser la formule “CONTROL + F” pour trouver les signes “@” parce que c’est sans aucun doute que les adresses email comprennent tous un signe “@”.
C’est le même pour extraire les numéros de téléphone car ces derniers sont conformes à une certaine structure fixée. Si vous êtes en mesure d’écrire une expression régulière qui précise le même modèle de ces numéros de téléphone, vous pouvez entrer ce code par le biais de la fonction “rechercher” dans un éditeur de texte qui gère les expressions régulières (comme Notepad++) et les données que vous recherchez seront bien localisées.
🔎 Comment écrire une expression régulière
Si vous souhaitez extraire des numéros de téléphone à l’aide d’expressions régulières, il faut savoir comment les écrire.
# Apprendre les bases de RegEx
Apprendre RegEx à partir de rien peut prendre un certain temps, mais si vous comptez l’utiliser fréquemment dans votre travail quotidien et donc améliorer votre productivité de manière significative, cela peut valoir la peine d’essayer.
Un bon point de départ est le tutoriel JS RegEx de W3School. Vous y apprendrez la syntaxe de base de RegEx et la grammaire des modificateurs et des quantificateurs.
Comme c’est assez compliquée pour les débutants et les non-codeurs, on ne s’y attardera pas davantage.
# Compter sur AI (ChatGPT)
Oui, vous ne vous trompez pas. ChatGPTQ peut nous aider à écrire des expressions régulières, au même qu’il peut nous écrire des codes de scraping. C’est surtout adapté pour les non-codeurs et les nouveaux débutants.
Soit vous précisiez bien votre besoin, comme “écrivez-moi une expression régulière pour extraire toutes les chaînes de chiffres qui commencent par 0 et se terminent par de 1 à 9”, soit vous donniez une demande avec des déterminatifs, comme “écrire une expression régulière pour trouver les numéros de téléphone français dans un texte”, AI vous fournira un bon code :
# Utiliser l’outil RegEx d’Octoparse
Il existe des outils prêts à l’emploi qui aident les gens à écrire des RegEx d’une manière plutôt facile. Octoparse est un logiciel d’extraction de données, et il comprend un outil RegEx pour faciliter le nettoyage de données. C’est facile et un peu simple. Vous pouvez utiliser pour extraire les données qui commencent ou terminent par un certain élément ou contiennent un certain élément.
🚀 Trois cas où RegEx aide à extraire les numéros de téléphone
L’extraction de numéros de téléphone est faite sous plusieurs sénarios. Je les divise principalement en trois cas :
Depuis des pages Web
C’est le cas le plus facile à faire. Avec un seul logiciel Octoparse, vous arriverez à extraire les numéros de téléphone sur des sites Web, totalement sans aucun codage, quelle que soit la forme sous laquelle les numéros de téléphone sont stockés dans le HTML.
Lors de l’extraction de données, vous pouvez avoir recours à l’outil d’expression régulière intégré et à d’autres pour nettoyer les données.
Depuis des listes structurées
Il peut s’agir de plusieurs numéros de téléphone dans une seule grande liste structurées. Par exemple :
Tél : 021 1234567
N° de téléphone : 021 1234567
<li> 021 1234567 </li>
Quel est le moyen le plus simple d’extraire des numéros de téléphone comme ceux-ci ? Nous allons maintenant utiliser l’outil RegEx d’Octoparse pour ce faire.
Par exemple, on extrait les numéros de téléphone de cette liste :
<p>Here is an example of file format </p>
<ul>
<li>(021)1234567 </li>
<li>(123) 456 7899 </li>
<li>(123).456.7899 </li>
<li>(123)-456-7899 </li>
<li>123-456-7899 </li>
<li>123 456 7899 </li>
<li>1234567899 </li>
<li>0511-4405222 </li>
<li>021-87888822 </li>
<li>+8613012345678 </li>
<li>… </li>
</ul>
Chaque numéro de téléphone commence par <li> et se termine par </li>. Et nous pouvons utiliser l’outil RegEx dans Octoparse pour extraire rapidement tous les numéros de téléphone.
- Lancez Octoparse et ouvrez l’outil RegEx.
- Copiez et collez le code source dans la case “Original Text”.
- Sélectionnez ensuite l’option “Start with” et entrez “<li>”.
- Ensuite, sélectionnez l’option “End With” et entrez “</li>”.
- Cliquez sur “Generate”, une expression régulière sera générée automatiquement.
- N’oubliez pas de sélectionner l’option “Match All”.
- Cliquez sur “Match”.
Une fois l’opération terminée, tous les numéros de téléphone correspondants sont répertoriés dans la case située à gauche.
Depuis des fichiers de texte
Toutefois, si vous ne parvenez pas à trouver le caractère commun avec lequel chaque numéro de téléphone commence et se termine, l’outil ne suffira pas à générer un code Regex. C’est là où vous pouvez utiliser ChatGPT pour écrire une expression régulière, et puis coller le texte original et l’expression dans l’outil RegEx pour extraire les données souhaitées.
Par exemple, on extrait les numéros de téléphones depuis ce petit paragraphe :
” Bonjour, voici mon numéro de téléphone : 01 23 45 67 89. Vous pouvez également me joindre au +33 6 12 34 56 78 ou au 06-98-76-54-32. “
- Je demande une aide auprès de ChatGPT.
- Je copie le texte original et l’expression régulière dans l’outil RegEx d’Octoparse.
- C’est fait !
Si vous le trouve utile et êtes impatient d’essayer, il faut installer Octoparse pour utiliser l’outil RegEx. C’est totalement gratuit.
J’espère que cet article vous aidera. En effet, la même méthode peut être utilisée également pour extraire les emails ou des liens de réseaux sociaux. S’il y a des problèmes sur ces méthodes faciles d’utiliser RegEx pour extraire les numéros de téléphone, n’hésitez pas à nous contacter.
发表回复