Address parser
Project description
Yet another python address parser for US postal addresses
Basic usage:
from address_parser import Parser
parser = Parser()
adr = parser.parse(line)
The adr object is a nested object with address parts as properties.
return TopBunch(
number=Bunch(
type='P',
number=int(self.number) if self.number else -1,
tnumber=str(self.number),
end_number=self.multinumber,
fraction=self.fraction,
suite=self.suite,
is_block=self.is_block
),
road=Bunch(
type='P',
name=self.street_name,
direction=self.street_direction if self.street_direction else '',
suffix=self.street_type if self.street_type else ''
),
locality=Bunch(
type='P',
city=self.city,
state=self.state,
zip=self.zip
),
hash=self.hash,
text=str(self)
)
Then, you can access properties on the object. The top level properties are:
- number: The house number
number.number. The number as an integer, or -1 if there is no house number
number.tnumber: The number as text
number.end_number: The final number in a number rage
number.fraction: The fractional part of the house number
number.suite: A suite or unit number.
- road: The street
road.name: The bare street name
road.direction. A cardinal direction, N, S, E, W, NE, NW, etc.
road.suffix. The road type, sich as St, Ave, Pl.
- locality: City, state, zip
locality.city
locality.state
locality.zip
text: Holds the whole address as text.
You can also access everything as dicts. From the top level, adr.dict will return all parsed components as a dict, and each of the top level bunches can also be acess as dicts, such as adr.road.dict
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.