英国邮政编码 - > Easting,Northing

时间:2010-06-07 07:47:36

标签: gis

是否有人知道免费的网络服务,它允许我将英国邮政编码转换为东部和北部。我找到了一个网站,我可以使用屏幕抓取,但也许有一个很好的免费网络服务。谢谢!

基督教

4 个答案:

答案 0 :(得分:7)

军械调查公开了他们的邮政编码列表,包括地理坐标(你可能需要进行一些转换)。我自己还没有使用过数据,但我认为this符合要求。

  

Code-Point Open是一个包含邮政编码单元的数据集,每个邮政编码单元都有精确的地理位置。

     

英格兰,苏格兰和威尔士约有170万个邮政编码单位。每个邮政编码单位,如KY12 8UP或PO14 2RS,平均包含15个相邻地址。

     

Codecode Point Open不提供北爱尔兰邮政编码。

请注意,由于英国邮政编码系统的性质,一年内更新频繁发生。确保在发布时下载新版本。

答案 1 :(得分:2)

查看NPE Map

答案 2 :(得分:1)

Codepoint邮政编码数据库于2010年作为压缩系列CSV文件的开放数据发布。

如果您要转换大量的邮政编码,您会发现在自己的系统上定位数据库会更有效率,因为调用在线API会导致您的刮刀等待的时间超过您对响应的预期。

您可以在此处从官方网站订购邮政编码数据:     https://www.ordnancesurvey.co.uk/oswebsite/products/code-point-open/index.html

或者只是从此副本下载:     http://www.freepostcodes.org.uk/

北爱尔兰的数据不包括在内,但这里有一份数据副本:     http://jamiethompson.co.uk/web/2010/05/30/code-point-open-northern-ireland-addendum/

保存工作。

解析这两个文件的python代码如下:     http://scraperwiki.com/scrapers/uk_postcodes_from_codepoint/edit/     http://scraperwiki.com/scrapers/ni_postcodes_from_codepoint/edit/

用于查找这两个数据库的python CGI脚本代码如下:     http://scraperwikiviews.com/run/uk_postcode_lookup/

答案 3 :(得分:1)

如果您正在处理大量数据,那么最好使用您自己的本地解决方案。这是一个可以进行转换的Python脚本: http://webscraping.com/blog/Converting-UK-Easting-Northing-coordinates/

from pyproj import Proj, transform

v84 = Proj(proj="latlong",towgs84="0,0,0",ellps="WGS84")
v36 = Proj(proj="latlong", k=0.9996012717, ellps="airy",
    towgs84="446.448,-125.157,542.060,0.1502,0.2470,0.8421,-20.4894")
vgrid = Proj(init="world:bng")


def ENtoLL84(easting, northing):
    """Returns (longitude, latitude) tuple
    """
    vlon36, vlat36 = vgrid(easting, northing, inverse=True)
    return transform(v36, v84, vlon36, vlat36)

def LL84toEN(longitude, latitude):
    """Returns (easting, northing) tuple
    """
    vlon36, vlat36 = transform(v84, v36, longitude, latitude)
    return vgrid(vlon36, vlat36)


if __name__ == '__main__':
    # outputs (-1.839032626389436, 57.558101915938444)
    print ENtoLL84(409731, 852012)