From a58194ca2e3191792d97f645de83addbf339157f Mon Sep 17 00:00:00 2001 From: Al Date: Sun, 28 Aug 2016 15:15:38 -0400 Subject: [PATCH] [fix] add_admin_boundaries and adding cleaned up house number --- scripts/geodata/addresses/components.py | 2 ++ scripts/geodata/openaddresses/formatter.py | 5 +++-- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/scripts/geodata/addresses/components.py b/scripts/geodata/addresses/components.py index cb9624ca..20d49391 100644 --- a/scripts/geodata/addresses/components.py +++ b/scripts/geodata/addresses/components.py @@ -709,6 +709,8 @@ class AddressComponents(object): containing_components = osm_components[i + 1:] component = self.categorize_osm_component(country, props, containing_components) + if component is None: + continue if (props.get('type'), safe_encode(props.get('id', ''))) in self.use_admin_center_ids: props = props.get('admin_center', props) diff --git a/scripts/geodata/openaddresses/formatter.py b/scripts/geodata/openaddresses/formatter.py index 119aa1a7..63cc1b3f 100644 --- a/scripts/geodata/openaddresses/formatter.py +++ b/scripts/geodata/openaddresses/formatter.py @@ -306,6 +306,8 @@ class OpenAddressesFormatter(object): house_number = components.get(AddressFormatter.HOUSE_NUMBER, None) if house_number: house_number = self.cleanup_number(house_number) + if house_number is not None: + components[AddressFormatter.HOUSE_NUMBER] = house_number postcode = components.get(AddressFormatter.POSTCODE, None) if postcode: @@ -324,10 +326,9 @@ class OpenAddressesFormatter(object): # If there's a postcode, we can still use just the city/state/postcode, otherwise discard if not (street and house_number) or street.lower() == house_number.lower() or (unit and street and street.lower() == unit.lower()): - components = self.components.drop_address(components) - if not postcode: continue + components = self.components.drop_address(components) # Now that checks, etc. are completed, fetch unit and add phrases, abbreviate, etc. unit = components.get(AddressFormatter.UNIT, None)