From 033357aa3aa5501c5c51fa98a8175930c13d0745 Mon Sep 17 00:00:00 2001 From: Paul Leclercq Date: Thu, 17 Oct 2024 19:39:16 +0200 Subject: [PATCH] wip (#272) --- .../mediatree/detect_keywords.py | 13 ++ .../mediatree/keyword/keyword.py | 208 +++++++++++++++--- .../mediatree/keyword/stop_words.py | 54 ++++- 3 files changed, 231 insertions(+), 44 deletions(-) diff --git a/quotaclimat/data_processing/mediatree/detect_keywords.py b/quotaclimat/data_processing/mediatree/detect_keywords.py index eff1a301..9f2be80a 100644 --- a/quotaclimat/data_processing/mediatree/detect_keywords.py +++ b/quotaclimat/data_processing/mediatree/detect_keywords.py @@ -107,12 +107,25 @@ def filter_keyword_with_same_timestamp(keywords_with_timestamp: List[dict])-> Li return keywords_with_timestamp +def replace_word_with_context(text: str) -> str: + word = "groupe verlaine" + replacement = "" + pattern = f".{{0,50}}{re.escape(word)}.{{0,50}}" + + # Replace the matched word along with its surrounding context + result = re.sub(pattern, replacement, text) + + return result def remove_stopwords(plaintext: str) -> str: logging.debug(f"Removing stopwords {plaintext}") stopwords = STOP_WORDS for word in stopwords: plaintext = plaintext.replace(word, '') + if "groupe verlaine" in plaintext: + logging.debug(f"special groupe verlaine case") + plaintext = replace_word_with_context(plaintext) + return plaintext @sentry_sdk.trace diff --git a/quotaclimat/data_processing/mediatree/keyword/keyword.py b/quotaclimat/data_processing/mediatree/keyword/keyword.py index d60e2a16..50e0292d 100644 --- a/quotaclimat/data_processing/mediatree/keyword/keyword.py +++ b/quotaclimat/data_processing/mediatree/keyword/keyword.py @@ -40,6 +40,10 @@ "keyword": "aquaculture durable", "category": "Agriculture" }, + { + "keyword": "arbre planté", + "category": "Ecosystème" + }, { "keyword": "bon pour la planète", "category": "General" @@ -112,6 +116,30 @@ "keyword": "nous adapter à un futur incertain", "category": "General" }, + { + "keyword": "plantant des arbres", + "category": "Ecosystème" + }, + { + "keyword": "plantation d'arbres", + "category": "Ecosystème" + }, + { + "keyword": "plante des arbres", + "category": "Ecosystème" + }, + { + "keyword": "plantent des arbres", + "category": "Ecosystème" + }, + { + "keyword": "planter des arbres", + "category": "Ecosystème" + }, + { + "keyword": "planté des arbres", + "category": "Ecosystème" + }, { "keyword": "prise de conscience environnementale", "category": "General" @@ -258,10 +286,6 @@ } ], "adaptation_climatique_solutions_indirectes": [ - { - "keyword": "arbre", - "category": "" - }, { "keyword": "barrage", "category": "Eau" @@ -308,7 +332,7 @@ }, { "keyword": "gestion de l'eau", - "category": "" + "category": "Eau" }, { "keyword": "gestion des milieux aquatiques", @@ -346,10 +370,6 @@ "keyword": "parc", "category": "Ecosystème" }, - { - "keyword": "planter des arbres", - "category": "Ecosystème" - }, { "keyword": "pratiques vertueuses", "category": "Agriculture" @@ -440,6 +460,10 @@ "keyword": "aquaculture durable", "category": "Agriculture" }, + { + "keyword": "arbre planté", + "category": "Ecosystème" + }, { "keyword": "arrêter de prendre l'avion", "category": "Transport" @@ -856,10 +880,30 @@ "keyword": "photovoltaïque", "category": "Energie" }, + { + "keyword": "plantant des arbres", + "category": "Ecosystème" + }, + { + "keyword": "plantation d'arbres", + "category": "Ecosystème" + }, + { + "keyword": "plante des arbres", + "category": "Ecosystème" + }, + { + "keyword": "plantent des arbres", + "category": "Ecosystème" + }, { "keyword": "planter des arbres", "category": "Ecosystème" }, + { + "keyword": "planté des arbres", + "category": "Ecosystème" + }, { "keyword": "plastique recyclé", "category": "Economie des ressources" @@ -1262,10 +1306,6 @@ "keyword": "approche systémique", "category": "General" }, - { - "keyword": "arbre", - "category": "" - }, { "keyword": "atténuation", "category": "General" @@ -1506,10 +1546,6 @@ "keyword": "permaculture", "category": "Agriculture" }, - { - "keyword": "planter des arbres", - "category": "Ecosystème" - }, { "keyword": "plus durable", "category": "General" @@ -1812,6 +1848,10 @@ "keyword": "destruction de la biodiversité", "category": "Ecosystème" }, + { + "keyword": "destruction de la planète", + "category": "Ecosystème" + }, { "keyword": "destruction des habitats naturels", "category": "Ecosystème" @@ -2288,10 +2328,6 @@ "keyword": "d'ici 2050", "category": "" }, - { - "keyword": "destruction de la planète", - "category": "" - }, { "keyword": "disparition des espèces", "category": "" @@ -2450,6 +2486,10 @@ "keyword": "alimentation", "category": "Agriculture" }, + { + "keyword": "arbre", + "category": "" + }, { "keyword": "ars", "category": "" @@ -2944,6 +2984,10 @@ "keyword": "amélioration des pratiques d’élevages", "category": "Agriculture" }, + { + "keyword": "arbre planté", + "category": "Ecosystème" + }, { "keyword": "bien-être des animaux", "category": "Agriculture" @@ -3040,10 +3084,30 @@ "keyword": "nettoyage des océans", "category": "Ecosystème" }, + { + "keyword": "plantant des arbres", + "category": "Ecosystème" + }, + { + "keyword": "plantation d'arbres", + "category": "Ecosystème" + }, + { + "keyword": "plante des arbres", + "category": "Ecosystème" + }, + { + "keyword": "plantent des arbres", + "category": "Ecosystème" + }, { "keyword": "planter des arbres", "category": "Ecosystème" }, + { + "keyword": "planté des arbres", + "category": "Ecosystème" + }, { "keyword": "plastique recyclé", "category": "Economie des ressources" @@ -3326,7 +3390,7 @@ }, { "keyword": "zone naturelle protégée", - "category": "" + "category": "Ecosystème" }, { "keyword": "éco geste", @@ -3592,6 +3656,10 @@ "keyword": "combustibles fossiles", "category": "Energie" }, + { + "keyword": "destruction de la planète", + "category": "Ecosystème" + }, { "keyword": "dyoxide de carbone", "category": "General" @@ -4104,6 +4172,10 @@ "keyword": "déficit de pluie", "category": "" }, + { + "keyword": "déstabilisation atmosphérique", + "category": "" + }, { "keyword": "effondrement de la falaise", "category": "" @@ -4336,10 +4408,18 @@ "keyword": "sécheresse", "category": "" }, + { + "keyword": "température extrême", + "category": "" + }, { "keyword": "température record", "category": "" }, + { + "keyword": "températures plus hautes", + "category": "" + }, { "keyword": "trop grande chaleur", "category": "" @@ -4434,6 +4514,10 @@ "keyword": "cancer", "category": "" }, + { + "keyword": "cerné par les eaux", + "category": "" + }, { "keyword": "cinquante degrés", "category": "" @@ -4458,6 +4542,26 @@ "keyword": "dévastation", "category": "General" }, + { + "keyword": "eau boueuse", + "category": "" + }, + { + "keyword": "eaux boueuses", + "category": "" + }, + { + "keyword": "eaux déchainées", + "category": "" + }, + { + "keyword": "emporté par les eaux", + "category": "" + }, + { + "keyword": "englouti par les eaux", + "category": "" + }, { "keyword": "feux", "category": "" @@ -4498,10 +4602,22 @@ "keyword": "inondation", "category": "" }, + { + "keyword": "l'eau est monté", + "category": "" + }, + { + "keyword": "l'eau qui est monté", + "category": "" + }, { "keyword": "la roya", "category": "" }, + { + "keyword": "les eaux sont montées", + "category": "" + }, { "keyword": "les soulèvements de la terre", "category": "" @@ -4518,6 +4634,10 @@ "keyword": "maladies transmises par des insectes", "category": "" }, + { + "keyword": "millimètre d'eau", + "category": "" + }, { "keyword": "mois le plus chaud", "category": "" @@ -4530,6 +4650,10 @@ "keyword": "pathologie", "category": "" }, + { + "keyword": "piégé par les eaux", + "category": "" + }, { "keyword": "plante exotique envahissante", "category": "Ecosystème" @@ -4594,6 +4718,26 @@ "keyword": "restriction", "category": "General" }, + { + "keyword": "ruissellement de l'eau", + "category": "" + }, + { + "keyword": "ruissellement des eaux", + "category": "" + }, + { + "keyword": "sous l'eau", + "category": "" + }, + { + "keyword": "sous les eaux", + "category": "" + }, + { + "keyword": "submergé par les eaux", + "category": "" + }, { "keyword": "submersion", "category": "" @@ -4614,6 +4758,10 @@ "keyword": "tempête xynthia", "category": "" }, + { + "keyword": "trop d'eau", + "category": "" + }, { "keyword": "très chaud", "category": "" @@ -4768,10 +4916,6 @@ "keyword": "d'ici 2050", "category": "" }, - { - "keyword": "destruction de la planète", - "category": "" - }, { "keyword": "défi climatique", "category": "" @@ -4900,14 +5044,6 @@ "keyword": "soutenabilité environnementale", "category": "" }, - { - "keyword": "température extrême", - "category": "" - }, - { - "keyword": "températures plus hautes", - "category": "" - }, { "keyword": "transition agricole", "category": "General" @@ -4970,6 +5106,10 @@ "keyword": "alimentation", "category": "Agriculture" }, + { + "keyword": "arbre", + "category": "" + }, { "keyword": "ars", "category": "" diff --git a/quotaclimat/data_processing/mediatree/keyword/stop_words.py b/quotaclimat/data_processing/mediatree/keyword/stop_words.py index cf42ce9a..a365ba2c 100644 --- a/quotaclimat/data_processing/mediatree/keyword/stop_words.py +++ b/quotaclimat/data_processing/mediatree/keyword/stop_words.py @@ -1,7 +1,6 @@ # Based on advertising STOP_WORDS = [ "bonus écologique" - ,"verlaine isolation thermique" ,"haute isolation thermique fabriqué en france" ,"robert laine isolation thermique" ,"robert helen isolation thermique" @@ -14,23 +13,32 @@ ,"sur dacia point fr covoiturage" ,"dacia point fr un covoiturage" ,"engie peut vous aider par exemple avec des panneaux solaires" - ,"verlaine photovoltaïques" ,"verlaine le climat" ,"photovoltaïque groupe" ,"contrat d' entretien pour pompes à chaleur et photovoltaïque" # verlaine ,"groupe verlaine pro installations photovoltaïque" ,"groupe verlaine pro installation photovoltaïque" ,"installateur groupe de verlaine panneaux installateur photovoltaïques de garantie panneaux à photovoltaïques" + ,"panneaux à photovoltaïques garantis" ,"boosté vos économies travaux d' isolation bornes de recharge" ,"booster vos économies travaux d' isolation bornes de recharge" ,"il y a des affaires à faire sur l' isolation le chauffage les panneaux solaires" ,"il y a plein d' offre sur l' isolation le chauffage les panneaux solaires" ,"fenêtre double vitrage haute isolation thermique fabriqués dans notre usi" - ,"groupe verlaine isolation centrale photovoltaïque pompes à chaleur" - ,"groupe verlaine isolation centrale photovoltaïque et pompes à chaleur" - ,"groupe verlaine isolation photovoltaïques pompes à chaleur" - ,"groupe verlaine isolation photovoltaïque" - ,"groupe verlaine isolation" + ,"verlaine isolation centrale photovoltaïque pompes à chaleur" + ,"verlaine isolation centrale photovoltaïque et pompes à chaleur" + ,"verlaine isolation centrale photovoltaïque" + ,"verlaine isolation photovoltaïques pompes à chaleur" + ,"verlaine isolation photovoltaïque" + ,"verlaine isolation thermique" + ,"verlaine isolation" + ,"verlaine centrale photovoltaïque" + ,"verlaine photovoltaïques isolation photovoltaïque" + ,"centrale photovoltaïque de groupe" + ,"photovoltaïque chaleur groupe verlaine" + ,"verlaine photovoltaïque" + ,"photovoltaïque pompes à chaleur pour une rénovation globale groupe verlaine" + ,"photovoltaïques pompes à chaleur pour une rénovation globale" ,"photovoltaïques vie" ,"garanti photovoltaïques" ,"photovoltaïque verlaine" @@ -44,16 +52,20 @@ ,"installation photovoltaïque et garantis vingt-cinq ans" ,"centrale photovoltaïque et pompes à chaleur groupe verlaine" ,"centrale photovoltaïque pompes à chaleur groupe verlaine" + ,"pompes à chaleur groupe verlaine" ,"climat de confiance" ,"panneau photovoltaïque et bornes de recharge thompson groupe verlaine" ,"photovoltaïque pour réduire vos factures d' électricité groupe verlaine" ,"centrale photovoltaïque mobile facile" ,"photovoltaïque groupe verlaine" ,"photovoltaïque de groupe verlaine" + ,"verlaine centrale photovoltaïque" ,"centrale photovoltaïque a posé en toute simplicité" ,"centrale photovoltaïque à poser en toute simplicité" - ,"centrale photovoltaïque de quatre cents watts" + ,"photovoltaïque de quatre" ,"centrale photovoltaïque produisait et consommer votre propre énergie" + ,"verlaine isolation photovoltaïques pompes photovoltaïque" + ,"verlaine isolation photovoltaïques une pompe" ,"verlaine isolation centrales photovoltaïques" ,"verlaine isolation photovoltaïque et pompe à chaleur" ,"verlaine isolation centrales photovoltaïques et pompes" @@ -69,11 +81,13 @@ ,"bornes de recharge et d' un" ,"euros par mois bornes de recharge" ,"leader du photovoltaïque chez les particulier" + ,"leader foot du photovoltaïque" ,"leader du photovoltaïque chez du photovoltaïque" ,"leader du photovoltaïque chez photovoltaïque " ,"panneaux solaires pour produire votre énergie" ,"installation des panneaux solaires c' est moi" ,"à la crème solaire c' est pour les panneaux solaires" + ,"photovoltaïque centrale de photovoltaïque" ,"panneaux de photovoltaïques panneaux avec photovoltaïques contrat avec demain" ,"panneaux avec photovoltaïques contrat" ,"installateur panneaux de photovoltaïque" @@ -143,10 +157,14 @@ ,"on monte les panneaux solaires que j'ai" ,"énergie solaire avec avicenne" ,"panneaux photovoltaïques garanti" + ,"photovoltaïques avec garanti" ,"on installe des panneaux photovoltaïques borne de recharge" ,"on installe des panneaux photovoltaïques des bornes de recharge" ,"mille bornes de recharge entre particuliers" - ,"verlaine installateur de panneaux photovoltaïques" + ,"verlaine installateur de panneaux photovoltaïques photovoltaïque" + ,"verlaine installateur de panneaux photovoltaïque" + ,"verlaine installations photovoltaïques photovoltaïque" + ,"photovoltaïque vie" ,"panneaux contrat photovoltaïques" ,"leader photovoltaïque du photovoltaïque" ,"leader photovoltaïque du chez photovoltaïque" @@ -154,6 +172,7 @@ ,"énergie avec le leader du photovoltaïque photovoltaïque" ,"photovoltaïque leader chez du les photovoltaïque" ,"leader photovoltaïque" + ,"leader football du photovoltaïque" ,"leader chez du les photovoltaïque" ,"chez les photovoltaïque particuliers" ,"en train d" @@ -172,6 +191,9 @@ ,"énergie renouvelable au monde" ,"par des garanties d' origine renouvelable" ,"verlaine isolation centrales photovoltaïques pompes à chaleur" + ,"verlaine programme centrale avec photovoltaïque" + ,"verlaine installateur de pac le photovoltaïque" + ,"euro de plus une centrale photovoltaïque" ,"verlaine isolation centrales photovoltaïques et pompes à chaleur" ,"installation de panneaux photovoltaïques plus d' infos sur tugo" ,"groupe verlaine panneaux photovoltaïques et bornes de recharge" @@ -191,13 +213,20 @@ ,"energy le kit de huit panneaux photovoltaïque" ,"énergie le kit de huit panneaux photovoltaïque" ,"installation photovoltaïque garanti" + ,"groupe verlaine isolation centrales photovoltaïques pompes à chaleur" + ,"verlaine isolation photovoltaïque centrale photovoltaïque et pompes à chaleur" + ,"installations photovoltaïques garantis" ,"photovoltaïques photovoltaïques garanti" + ,"photovoltaïques vingt-cinq" + ,"centrale photovoltaïques mobile" ,"photovoltaïques à garanti" + ,"photovoltaïques garantis à vie" ,"rlaine installateur de panneaux de photovoltaïques" ,"installateur panneaux de photovoltaïques panneaux photovoltaïques" ,"énergies renouvelables groupe verlaine" ,"spécialisée dans les énergies renouvelables" ,"spécialisée dans les énergies renouvelables" + ,"offrant un écosystème technologique durable" ,"borne de recharge offert" ,"plus de mille bornes de recharge" ,"localise une borne de recharge" @@ -211,6 +240,7 @@ ,"bornes de recharge et deux" ,"si vous avez une borne de recharge partager" ,"cent pour cent électriques bornes de recharge" + ,"cent des panneaux photovoltaïques" ,"votre borne de recharge que vous habitez" ,"borne de recharge j' ai pas hésité" ,"edf installe votre bornes de recharge" @@ -248,6 +278,7 @@ ,"pompe à chaleur je suis fait pour la chaleur" ,"isolation photovoltaïque et pompe à chaleur pour une réno" ,"centrale photovoltaïque du futur" # thompson + ,"centrale du photovoltaïque futur" ,"centrale la photovoltaïque scène du futur" # thompson ,"centrale photovoltaïque à partir" ,"et plus durable et avec spoticar" @@ -283,6 +314,7 @@ ,"mon parcours rénovation diagnostic" ,"merlin la rénovation énergétique" ,"rénovation énergétique la météo avec groupe verlaine" + ,"photovoltaïque et pompe à chaleur pour une rénovation" ,"rénovation globale groupe verlaine" ,"bien démarrer votre rénovation énergétique" ,"en machine le gaspillage" @@ -382,6 +414,7 @@ ,"son panneau solaire apporteront" ,"panneaux solaires pour faire des économies d' énergie" ,"panneaux solaires et faire des économies carrefour" + ,"ou des panneaux solaires plus respectueux" ,"garantie carrefour énergie" ,"économies sur votre énergie" ,"énergie c' est trop cher je vous réponds fait comme marc" @@ -562,4 +595,5 @@ ,"stocker le carbone ou faire de l' ombre en préservant les arbres" ,"opter pour de l' énergie renouvelable cette option" ,"se prélassait à l' ombre" -] + ,"senseo et produits de façon plus durable plus responsable" +] \ No newline at end of file