开发者用公开地理数据自动核验土地是否紧邻公共土地
Show HN: Unfenced – Land for sale that borders public land
开发者把买房时手工比对地块与公共土地地图的流程自动化,做出免费工具 Unfenced:每周从授权房源 API 拉取约 70 万条美国在售房源,用州县 GIS 与授权地块数据取边界。
作者把买房时手工核对地块的重复劳动自动化成免费工具,并公开了数据源与踩坑细节,可迁移给想做地理数据类小工具的人。
大家好 HN,这是我做的。标注"与州有土地接壤"的房源很难核实:你得打开县政府的 GIS 查看器,手工把地块边界和公共土地地图对齐。我在找自己的土地时经常这么干,后来就把它自动化了。
工作原理,每周一次:
1. 通过一个持牌房源 API 获取约 700,000 条美国在售房源。
2. 每个靠近公共土地的房源都会获取其所在县的地块边界——州和县的 GIS 服务有公开发布的就从那里取,其他地方则从一家持牌地块数据供应商获取。如果没有边界,页面会如实说明并从房源点位测量距离,但绝不会声称存在共享边界。
3. 公共土地采用 USGS PAD-US 4.1 数据,筛选条件为:机构实际拥有(Category = Fee,因此不含保护地役权)、对公众开放、且面积至少 50 英亩。
4. 地块与公共土地在局部度量投影下进行比较(shapely/geopandas):包含(inholding,即飞地)、接壤(边界相接,并以英尺为单位测量共享边界长度)、或相邻(75 米以内,约一条道路的宽度)。
每处房产还会附带其背后相连公共土地的面积、海拔(USGS 3DEP)、道路通达性(Census TIGER 道路)、FEMA 洪水分区和林务局野火风险等级。输出约 16,000 个静态页面,使用 Leaflet 地图托管在 Cloudflare Pages 上,每周一在一台 Mac mini 上重建。邮编搜索在你的浏览器中根据 Census 质心查询,因此你输入的任何内容都不会被发送到任何地方。
比预期更难的部分:
- 有时地块面积字段里收到的是平方英尺。阿拉巴马州伯明翰的一条房源显示为 7,000 英亩。现在面积会与价格、房产类型和地块本身进行核对,然后予以修正或附注说明后不予显示。
- 公寓和小区房源通常会解析到业主协会的共有地块,于是一块普通城镇地块可能看起来共享数英里边界。这些会被标记为共享地块。
- PAD-US 将某些单元存储为单个多部件多边形。我对蒙大拿州某处房产算出的第一个"相连公共土地"数字是 6,970 万英亩,约占该州四分之三。现在单元会被拆分成独立部分,只在真正相接的地方进行合并。
- 道路中心线和地块边界来自不同机构,常常相差数十米,因此"某条道路是否与这个地块相接"需要一个容差值,而临街长度只在边界沿道路延伸的路段计算。
它是免费的,无需注册账户,也没有 cookie。任何搜索都可以设置免费的每周邮件提醒,从周一开始。我特别想听听买过农村土地的人的意见:它还应该测量哪些目前没有测量的东西?
来源:Hacker News · 首页 · news.ycombinator.com