Data science

Data science

Transformer les données publiques en valeurs grâce à la science des données

L’intelligence économique est très importante lorsque l’on opère sur des marchés concurrentiels. Par exemple, en France :

Les développeurs de projets d'énergie éolienne et photovoltaïque (PV)

sont mis en compétition (enchères/appels d'offres) pour obtenir des mécanismes de soutien.

Les investisseurs

sont mis en concurrence pour investir dans les portefeuilles d'actifs et le capital social des plateformes de développement.

Les consommateurs

sont soumis à des appels d'offres inversés organisés par les producteurs pour sécuriser leur l'approvisionnement en électricité verte par le biais de contrats d'achat long-terme d'électricité (Corporate PPA).

Il est donc important de connaître l’ampleur de la concurrence pour être en mesure de fixer un prix compétitif, d’évaluer précisément la valeur des actifs dans lesquels vous allez investir, ou d’identifier les meilleurs projets et producteurs pour les opportunités d’achat d’électricité.

Pour les projets éoliens en France, Wattabase collecte des informations de valeur sur Internet (sites des administration départementales) par le biais du web scraping afin d’établir sa base de données. Pour les projets photovoltaïques, WattaBase utilise le traitement du langage naturel naturel (natural language processing) pour extraire les informations des rapports d’études environnementales et des avis des autorités afin de créer sa base de données.

Web scraping

Base de données des projets éoliens

Pour le développement de projets éoliens terrestre, il est nécessaire d’obtenir une autorisation environnementale. Ces demandes d’autorisations sont évaluées et délivrées par les différentes Préfectures départementales en France. Ces données relatives aux projets en cours d’instructions ou récemment autorisés ou refusés sont accessibles au public.

Mais tout n’est pas si simple. Les organismes en charge de la délivrance des autorisations environnementales en France sont les préfectures départementales. La France compte plus de 90 départements : c’est donc sur plus de 90 sites web différents que ces précieuses informations sont publiées. Chaque préfecture départementale a un site internet avec une architecture qui lui est propre, avec des pages différentes ou multiples pour l’accès aux informations. Les décisions administratives peuvent notamment être classées par année, par commune, par type de technologie, etc.
Pour créer et maintenir une base de données exhaustive, la recherche manuelle sur ces sites web est complexe et fastidieuse. Cela représente beaucoup trop de temps perdu pour les équipes de développement dont la valeur réside ailleurs.

WattaBase rend ces informations lisibles et accessibles dans une seule et même base de données. En commercialisant ces informations, WattaBase permet aux porteurs de projets de se mettre au même niveau d’information et d’analyse que les acteurs dominants, à un coût beaucoup plus abordable.

Construire un scraper avec python,
beautifulsoup et selenium

Le paysage actuel de la science des données offre une multitude d’outils pour construire un scraper et collecter des informations à partir de sites web. Avec l’aide de ces outils, WattaBase a construit des scrapers pour rechercher les projets éolien terrestre sur les sites web des différents départements. Pour chaque projet qui apparaît ou qui est mis à jour, l’url est collectée afin que les informations supplémentaires puissent être analysées et retraitées dans un second temps. La collecte des URL et des noms du projets est automatisée. La collecte d’autres informations telles que la municipalité ou les liens PDF des décisions administratives (Enquêtes Publiques, Autorisations, Refus) est également automatisée dans la mesure du possible. Les PDF scannés contiennent des informations supplémentaires telles que la puissance unitaire des machines, la puissance totale du parc, les dimensions des turbines, la présence de bridages, l’identité du développeur, etc.

Un module python principal a été développé : il contient des fonctions pour des actions et des méthodes de recherche similaires. Pour chaque département, un script python distinct est développé et tenu à jour : il contient les adresses URL à rechercher, le numéro et le nom du département, et est adapté à l’architecture spécifique du site internet du département.

Ce script fait appel à des fonctions spécifiques du module principal et peut contenir une section de code spécifique pour le département en question si nécessaire. Le processus global du scraper est illustré ci-dessous.

En exécutant régulièrement le scraper, la base de données principale est mise à jour avec les nouveaux projets qui font l’objet d’une demande de permis ou les projets qui ont obtenu un permis ou un refus. En fonction de la structure de la page internet, le scraper recherche une URL unique par projet, des tableaux de projets ou une liste déroulante de projets lorsque tout est présenté sur une seule page.

Grâce à ce processus, les données non structurées sont transformées et consolidées en informations utiles et accessibles, stockées dans une base de données couvrant l’ensemble des préfectures départementales de la France métropolitaine.

Construction de nos produits

  • À l’exception du nom et de l’adresse URL du projet, les informations supplémentaires relatives aux projets, telles que les caractéristiques techniques de l’installation, sont renseignées manuellement.

  • Le premier motif est qu’il n’y a pas de système ou de règle générique sur la manière dont les fichiers PDF sont nommés et stockés sur les sites web des préfectures départementales. La recherche par mots clés est donc peu aisée. En outre, les métadonnées contiennent rarement des informations utiles.

  •  

Pour ce qui est du contenu des décisions administratives, ces documents étant quasi systématiquement scannés, les métadonnées ne contiennent pas d’informations (hormis la marque de la machine utilisée pour les numériser). Les prochains développements consisteront à mettre en place et fiabiliser une extraction de données à l’aide du traitement du langage naturel (NLP).

Traitement du langage naturel

Base de données des projets solaires

Contrairement aux projets éoliens, les projets photovoltaïques ne nécessitent pas de permis environnemental. Ils sont soumis à permis de construire, mais ces derniers ne sont pas (ou rarement) publiés sur les sites internet des mairies. Mais une étude environnementale est néanmoins nécessaire pour les installations photovoltaïques au sol ou flottantes, donnant lieu à la publication de l’avis de la Mission régionale d’autorité environnementale. Ces avis sont une bonne source d’informations concernant les caractéristiques des projets en cours de développement. Les avis sont disponibles en format pdf imprimés.

WattaBase a créé une base de données en extrayant les informations de ces avis à l’aide de la reconnaissance optique de caractères et du traitement du langage naturel. Pour la reconnaissance optique de caractères (OCR), WattaBase utilise la bibliothèque libre « PyTesseract ». Et pour le traitement du langage naturel, la bibliothèque libre « SpaCy ». Pour la collecte des rapports pdf et la mise à jour de la base de données avec les nouveaux projets, un scraper web construit avec « beautifulsoup » a été mis en place. Pour le moteur de base de données, c’est la bibliothèque open-source « SQLite » qui est utilisée.

Le processus global du scraper et du traitement du langage naturel est illustré ci-dessous.

Le scraper identifie régulièrement la publication de nouveaux projets par l’analyse des différentes adresses URL, en vérifiant que ces adresses ne sont pas déjà présentes dans notre base de données. Les nouvelles adresses URL du pdf et les noms de projets associés sont ajoutés à la base de données. Pour chaque nouveau projet, le pdf est téléchargé et converti en image. Cette image est convertie en un fichier texte avec la bibliothèque « PyTesseractOCR ». Puis, via l’utilisation de « SpaCy NLP », les données telles que la capacité du parc (MW), la production annuelle du parc (MWh) ou le nombre de panneaux sont extraites et intégrées dans la base de données. D’autres données non numériques sont également extraites comme le nom de la SPV du projet (ou le propriétaire) et la classification de la nature du sol (selon le Plan local d’urbanisme).

Nos futurs Produits :​

WattaBase travaille actuellement à l'extraction d'informations plus qualitatives, notamment afin d’accompagner l’activité de développement de projet.

  • Les motifs de refus pour les projets éoliens terrestres, regroupés au sein d’une base de données exhaustive, constituent une information de valeur pour l’activité de développement de projets
  • Les avis des Missions régionales d’autorité environnementale (MRAE) contiennent des recommandations visant à rendre les projets plus acceptables pour le public et plus vertueux pour l'environnement. Les recommandations sont extraites à l'aide du traitement du langage naturel. Le développement complémentaire consiste à créer des catégories basées sur la similarité des mots/recommandations. Cela permettra aux développeurs de savoir sur quels attraits se concentrer lors de l'élaboration de leurs projets : éviter les pièges et identifier les nouveaux enjeux afin de favoriser leur aboutissement.