Passer au contenu principal

Net::Whois - Le scraper Whois vérifie les données de domaine et détermine si un domaine est enregistré ou non

Présentation du scraper

Présentation du scraper

Les données sont collectées via le protocole WHOIS à partir des serveurs centraux pour chaque zone de domaine. Vous pouvez en savoir plus sur le WHOIS sur Wikipédia : http://fr.wikipedia.org/wiki/WHOIS

Les fonctionnalités d'A-Parser permettent de sauvegarder les paramètres de collecte de données pour une utilisation ultérieure (présélections), de définir des programmes de collecte et bien plus encore. Vous pouvez utiliser la multiplication automatique des requêtes, la substitution de sous-requêtes à partir de fichiers, l'énumération de combinaisons alphanumériques et de listes pour obtenir le maximum de résultats possible.

La sauvegarde des résultats est possible dans le format et la structure dont vous avez besoin, grâce au puissant moteur de gabarits intégré Template Toolkit qui permet d'appliquer une logique supplémentaire aux résultats et d'exporter les données dans divers formats, y compris JSON, SQL et CSV.

Cas d'utilisation du scraper

Données collectées

  • Si le domaine est enregistré ou non
  • Date d'expiration de l'enregistrement du domaine
  • Date d'enregistrement du domaine
  • Service whois utilisé
  • Liste des serveurs de noms (NS) du domaine
  • Statut actuel du domaine
  • Date de libération du domaine

Possibilités

  • Prise en charge des domaines internationaux (IDN, par exemple яндекс.рф)

Cas d'utilisation

  • Collecte de domaines libres ou de ceux qui seront bientôt libérés
  • Collecte de la liste des serveurs NS
  • Obtention des statuts de domaines

Requêtes

Comme requêtes, il est nécessaire d'indiquer le domaine du site recherché, par exemple :

a-parser.com  
yandex.ru
google.com
vk.com
facebook.com

Variantes d'affichage des résultats

A-Parser prend en charge un formatage flexible des résultats grâce au moteur de gabarits intégré Template Toolkit, ce qui lui permet d'afficher les résultats sous n'importe quelle forme, ainsi que de manière structurée, par exemple en CSV ou JSON

Affichage par défaut

Format du résultat :

$query - registered: $registered, expire: $expire_date, creation: $creation_date

Le résultat affiche le domaine, s'il est enregistré, la date d'expiration et la date d'enregistrement du domaine :

facebook.com - registered: 1, expire: 30.03.2028, creation: 29.03.1997
a-parser.com - registered: 1, expire: 25.02.2022, creation: 25.02.2012
vk.com - registered: 1, expire: 23.06.2021, creation: 24.06.1997
yandex.ru - registered: 1, expire: 01.10.2021, creation: 23.09.1997
google.com - registered: 1, expire: 14.09.2028, creation: 15.09.1997

Affichage de la liste des NS

Format du résultat :

$ns.format('$server\n')

Exemple de résultat :

demi.ns.cloudflare.com
vern.ns.cloudflare.com

Affichage des données sur les délais du domaine en CSV

Format du résultat :

[% tools.CSVline(query, registered, expire_date, creation_date, free_date, whoisserver, registrar) %]

Exemple de résultat :

a-parser.com,1,25.02.2022,25.02.2012,none,whois.crsnic.net,"PDR Ltd. d/b/a PublicDomainRegistry.com"

Affichage de la liste des NS dans un tableau CSV

Format du résultat :

[% FOREACH ns;
tools.CSVline(query, server);
END %]

Exemple de résultat :

a-parser.com,demi.ns.cloudflare.com
a-parser.com,vern.ns.cloudflare.com

Dump des résultats en JSON

Format de sortie general:

[% IF notFirst;
",\n";
ELSE;
notFirst = 1;
END;

obj = {};
obj.query = query;
obj.registered = p1.registered;
obj.expire_date = p1.expire_date;
obj.creation_date = p1.creation_date;
obj.free_date = p1.free_date;
obj.whoisserver = p1.whoisserver;
obj.registrar = p1.registrar;
obj.domains = [];

FOREACH item IN p1.ns;
obj.domains.push({
server = item.server
});
END;

obj.json %]

Texte initial:

[

Texte final:

]

Exemple de résultat :

[{
"registered": 1,
"query": "a-parser.com",
"free_date": "none",
"expire_date": "25.02.2022",
"registrar": "PDR Ltd. d/b/a PublicDomainRegistry.com",
"domains": [
{
"server": "demi.ns.cloudflare.com"
},
{
"server": "vern.ns.cloudflare.com"
}
],
"creation_date": "25.02.2012",
"whoisserver": "whois.crsnic.net"
}]
astuce

Pour que les options "Texte initial" et "Texte final" soient disponibles dans l'Éditeur de tâches, vous devez activer "Plus d'options".

Traitement des résultats

A-Parser permet de traiter les résultats directement pendant la collecte de données, dans cette section nous avons présenté les cas les plus populaires pour le scraper Net::Whois

Obtenir le registraire du domaine

Ajouter le Results Builder (Constructeur de résultats) et dans la liste déroulante, choisir la source : $p1.data. Choisir le type : RegEx Match. Dans le champ Regex, saisir l'expression régulière : Registrar:\s*(.+) et sauvegarder dans la variable registrar. Ajouter au Format du résultat : $query - $registrar\n

Télécharger l'exemple

Comment importer l'exemple dans A-Parser

eJxtVMlu2zAQ/ZVgkEPSOkJy6EU3x4CBFq6VOg56sH0grJHLhiIZLm4CQf/eIbVQ
SXuyZ3vzhvNGDThmn+2DQYvOQr5rQMf/kIPBE7fOMAMz0MxYNCFhB2t0ef7zl+KW
AiVWzAsHswbcm0YqU2c0hpdIQV6SXSlTM0egMQ3OTPiQdvni0bxd3Fxcjn32ewnt
4TCDLtkuY2XI1XdZT2sMPrIzblXA5wKTe0nWmtWxQ8kchmjWUbi6ztxrQGBlyR1X
komuQxgrdX2S/CUylIpyA0uOdmlUTS6HESBSH9jt+lGAIHys/dHVQF4xYXEGlqgu
GREpP0a4Q8OcMoUOfMjfgJJzIVZ4RpHSIv6956KkHcwrKvraF/4/pfgHox3Hm7ai
Tf0xxGFEidZ98T1VlWqlTsNjCF5zR7ZdKC/DYm7J+Yyoxzdbh7RaGRzb9Mh9dxKa
RhlkkVY218n1box3a5k4G7DKmyP1290SQ+ZYePtefqQmfI3g4TeHzaCufL+3n66y
z9dDcBsLpBeCilVYZFL8oSXEo5IVPxW9ngc6Xm7pZAq5ULUW6EYIb3GTNDi3/a6D
kV7hY/EitiCa4x0RFSXst8fuPbThxOxLYFzTuqZde8gjE+Jps5pGIOmWDHbTHW92
JAmHfIcnRXKlacKQ/WWPX4Bmet9505IGftuHLinMEp10xmTSgiG/a/8CXrN/Jg==

Paramètres possibles

ParamètreValeur par défautDescription
Recursive queryPermet d'obtenir une version étendue du WHOIS
WHOIS serverPermet de définir son propre serveur WHOIS
Checking by DNSPermet de vérifier si le domaine est enregistré en fonction de l'existence d'une IP pour le domaine
Checking domains by DNS recordVérification de l'IP, s'il trouve le statut ALLOCATED, il définit le domaine comme enregistré, si l'option est désactivée, la vérification de l'IP n'a pas lieu du tout
Force DNS check for not found domainsVérification forcée si le domaine a été identifié comme non enregistré