From 4b147cf8c29f2e388a1eb0156e8cb775d8dadc0f Mon Sep 17 00:00:00 2001 From: colttaine Date: Sun, 5 Mar 2023 18:45:09 +1100 Subject: [PATCH] Added more search terms to detect statistical unit type --- masterscraper/__init__.py | 74 ++++++++++++++++++++++++++++++--------- 1 file changed, 57 insertions(+), 17 deletions(-) diff --git a/masterscraper/__init__.py b/masterscraper/__init__.py index f0222c6..f7503b0 100644 --- a/masterscraper/__init__.py +++ b/masterscraper/__init__.py @@ -138,29 +138,69 @@ class scrape: # Process Unit Type key_unit = [] for key in self.data_info[0]: - if(key.lower().find('percent') >=0 or - key.lower().find('perc') >=0 or - key.lower().find('%') >=0 ): + + if( key.lower().find('percent') >=0 or + key.lower().find('perc') >=0 or + key.lower().find('%') >=0 ): key_unit.append('%') - elif(key.lower().find('dollar') >=0 or - key.lower().find('$') >=0 ): + + elif( key.lower().find('dollar') >=0 or + key.lower().find('$') >=0 ): key_unit.append('$') - elif(key.lower().find('euro') >=0 or - key.lower().find('€') >=0 ): + + elif( key.lower().find('euro') >=0 or + key.lower().find('€') >=0 ): key_unit.append('€') - elif(key.lower().find('km2') >=0 or - key.lower().find('km²') >=0 or - key.lower().find('mi2') >=0 or - key.lower().find('mi²') >=0 ): + + elif( key.lower().find('km2') >=0 or + key.lower().find('km²') >=0 or + key.lower().find('mi2') >=0 or + key.lower().find('mi²') >=0 ): + key_unit.append('km²') - elif(key.lower().find('country') >=0 or - key.lower().find('countries') >=0 or - key.lower().find('dependencies') >=0 ): + elif( key.lower().find('country') >=0 or + key.lower().find('countries') >=0 or + key.lower().find('dependencies') >=0 ): key_unit.append('countries') - elif(key.lower().find('index') >=0 or - key.lower().find('score') >=0 or - key.lower().find('report') >=0 ): + + elif( key.lower().find('index') >=0 or + key.lower().find('score') >=0 or + key.lower().find('report') >=0 ): key_unit.append('index') + + elif( key.lower().find('population') >=0 and + key.lower().find('density') <0 ): + key_unit.append('people') + + elif( key.lower().find('population') >=0 and + key.lower().find('density') >=0 ): + key_unit.append('people/km²') + + elif( key.lower().find('death') >=0 or + key.lower().find('mortality') >=0 and + key.lower().find('rate') >=0 ): + key_unit.append('deaths/1k population') + + elif( key.lower().find('birth') >=0 and + key.lower().find('rate') >=0 ): + key_unit.append('births/1k population') + + elif( key.lower().find('marriage') >=0 and + key.lower().find('rate') >=0 ): + key_unit.append('marriages/1k population') + + elif( key.lower().find('divorce') >=0 and + key.lower().find('rate') >=0 ): + key_unit.append('divorces/1k population') + + elif( key.lower().find('crime') >=0 and + key.lower().find('rate') >=0 ): + key_unit.append('crimes/100k population') + + elif( key.lower().find('murder') >=0 and + key.lower().find('rate') >=0 ): + key_unit.append('murders/100k population') + else: key_unit.append('unkown') self.data_info.append( key_unit )