Skip to main content

An interface to Ordnance Survey’s CodePoint-Open. CodePoint-Open is a free dataset that maps UK postcodes to coordinates.

oscodepoint reads in this data, whether in the original zip or decompressed, parses the data, and converts grid references to latitude and longitude.

The dataset can be downloaded from http://www.ordnancesurvey.co.uk/oswebsite/products/code-point-open/

Example:

>>> from oscodepoint import open_codepoint
>>> codepoint = open_codepoint('codepo_gb.zip')
>>> for entry in codepoint.entries():
...    print entry['Postcode'], entry['Latitude'], entry['Longitude']
...    break  # Over 1.6 million rows
AB101AA 57.1482995075 -2.09663094048

Too much data? Try limiting the postcode areas:

>>> from oscodepoint import open_codepoint
>>> codepoint = open_codepoint('codepo_gb.zip')
>>> for entry in codepoint.entries(areas=['NR', 'IP']):
...    print entry['Postcode'], entry['Eastings'], entry['Northings']
...    break
NR1 1AA 624068 308352

Want the postcode’s county?

Postcode entries have a Admin_country_code field. Doc/Codelist.xls maps these codes to county names, and codepoint.codelist can be used to access this file. For example:

>>> from oscodepoint import open_codepoint
>>> codepoint = open_codepoint('codepo_gb.zip')
>>> county_list = codepoint.codelist['County']
>>> for entry in codepoint.entries(areas=['NR']):
...    print entry['Postcode'], entry['Latitude'], entry['Longitude'], county_list.get(entry['Admin_county_code'])
...    break
NR1 1AA 52.6266175146 1.30932087485 Norfolk County

Get the total number of postcodes for your progress bar:

>>> from oscodepoint import open_codepoint
>>> codepoint = open_codepoint('codepo_gb.zip')
>>> print codepoint.metadata['area_counts']['NR']
22730
>>> print codepoint.metadata['total_count']
1692241

Metadata

Release files for oscodepoint 0.3.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for oscodepoint 0.3.0
File Size Uploaded
oscodepoint-0.3.0.tar.gz 4.7 kB Details

Release files / oscodepoint-0.3.0.tar.gz

Download URL oscodepoint-0.3.0.tar.gz
Size 4.7 kB
Tags Source
SHA-256 checksum
How to use checksums
30c2e910623667ee6600753dabc8e6a1879cd34aa0089bc67f12438ac38a281d
BLAKE2b-256 checksum
How to use checksums
24800367f21bd97ab2321c5645b1997737673c48536b037147ee5a8d95813b6d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.2.0 requests-toolbelt/0.8.0 tqdm/4.41.1 CPython/3.8.0

Release history Release notifications | RSS feed

This release

0.3.0 This release

1 release file

0.2.1

1 release file

0.2

1 release file

0.1

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page