Utiliser l'open data de l'Afnic : exemple avec le terme COVID

09 juin 2020 - Par Pierre-Aymeric Masse

L'Afnic met à disposition du grand public un ensemble de données mises à jour tous les mois. Parmi ces données nous retrouvons:

  • noms de domaine en .fr 
  • indicateurs par pays titulaire du .fr 
  • indicateurs par mois trimestre année du .fr 
  • nombre de noms de domaines par code postal du .fr 
  • indicateurs par type titulaire du .fr 
  • indicateurs par département titulaire du .fr 
  • indicateurs par type de domaine du .fr
  • indicateurs par bureau d enregistrement du .fr 


On peut donc par exemple étudier la distribution des titulaires de noms de domaine sur le territoire, étudier la proportion d'entreprises ayant un nom de domaine, etc.

Ces données sont facilement téléchargeables en allant sur http://opendata.afnic.fr

On va regarder aujourd'hui comment étudier la création des noms de domaine associé au terme Covid dans le .fr.

Pour ce faire, il existe de nombreuses solutions. Nous allons nous orienter sur du traitement en Python et avec une librairie peu connue, Vaex.

Python est un langage de programmation très utilisé pour la manipulation des données et est très souvent couplé à cet usage avec Pandas.

Le fichier "noms de domaine en point fr" une fois décompressé fait tout de même 0,45go ! Avec cette taille de fichier, utiliser Pandas est possible mais des traitements seraient assez longs.

Vaex est justement une implémentation de l'API de Pandas avec des choix techniques permettant de traiter ce genre de volume quasiment instantanément.

 

La première étape consiste à télécharger le fichier. Rien de bien compliqué puisque les données sont dans un fichier csv zippé. Un classique !

On importe les librairies et on importe le fichier:

On remarquera qu'il y a l'année et le mois dans le nom du fichier. Si on veut automatiser l'import et le traitement il suffira de simplement générer l'url. Le fichier est en latin1, puisqu'en français avec des accents.

Ensuite, il est nécessaire de faire un petit traitement pour supprimer les espaces et les accents dans les noms de colonnes. On va en profiter pour changer le format des dates qui sont en français.

Maintenant que l'on a le fichier importé dans le Dataframe "df", regardons ce que nous avons. On remarque que l'on a plus de 6M de domaine, certains avec des "date de retrait du whois". On se trouve donc devant un fichier avec l'ensemble de la zone depuis sa création, ou du moins depuis la mise à disposition de l'open data avec les domaines encore actif, ceux n'ayant pas de date de retrait, et les autres, inactifs.

Nous n'allons garder uniquement que les domaines créés depuis janvier 2020.

On se retrouve avec beaucoup moins de ligne, seulement 208732 domaines. On va donc préparer nos analyses en filtrant nos données. Vaex est très intéressant dans ce cas puisqu'il propose un système de lazy computation, c'est-à-dire qu'il va nous permettre de taguer très rapidement un ensemble de données et réaliser des opérations sur les données seulement lorsqu'on en aura besoin.

On regarde maintenant le nombre de noms de domaine qui nous intéressent.

Environ 1200 domaines soient finalement assez peu au vu du nombre de création.

Regardons rapidement le nombre de créations durant cette période

 

Le top 5 est parlant, on voit que le mois d'avril a été le meilleur en terme de création de domaines.

Pour finir, jetons un œil sur les domaines

Avec cette petite démonstration, nous avons vu la simplicité d'utilisation des données de l'open data de l'AFNIC. On peut réaliser différentes analyses tel que l'évolution des créations de domaines, leur durée d'enregistrement moyenne, etc..

L'ensemble du code est disponible sur github de l'Afnic.

 

Read this page in English Haut de page