Geocode NYC addresses locally using Python bindings for NYC Planning's Geosupport Desktop Edition.
Check out documentation for installing and usage here.
- Pythonic interface to all Geosupport functions
- Support for both Windows and Linux platforms
- Secure and fast using local geocoding - no API calls required
- Built-in error handling for Geosupport return codes
- Interactive help menu
- Python 3.8+
- Tested on Geosupport Desktop Edition 25a
- Windows (64-bit & 32-bit) and Linux operating systems
pip install python-geosupport
# Import the library and create a `Geosupport` object.
from geosupport import Geosupport
g = Geosupport()
# Call the address processing function by name
result = g.address(house_number=125, street_name='Worth St', borough_code='Mn')
result
is a dictionary with the output from Geosupport. For example:
{
'2010 Census Block': '1012',
'2010 Census Tract': '31',
'Assembly District': '65',
'Atomic Polygon': '112',
'B10SC - First Borough and Street Code': '14549001010',
'BOE Preferred B7SC': '14549001',
'BOE Preferred Street Name': 'WORTH STREET',
'BOROUGH BLOCK LOT (BBL)': {
'BOROUGH BLOCK LOT (BBL)': '1001680032',
'Borough Code': '1',
'Tax Block': '00168',
'Tax Lot': '0032'
},
'Blockface ID': '0212261942',
...
}
See the examples directory and accompanying readme.md.
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature
) - Make your changes
- Run tests (
python -m unittest discover
) - Run Black formatting (
black .
) - Commit your changes (
git commit -m 'Add some amazing feature'
) - Push to the branch (
git push origin feature/amazing-feature
) - Open a Pull Request
This project is licensed under the MIT License - see the license.txt file for details