不确定是否需要在 Geo stack exchange 或此处发布此内容。我正在用 Python 对一个大型数据库进行 api 调用,该数据库有一列包含 + 1000(单多边形)geojson 字符串。每个 geojson 看起来像这样:
{'type': 'FeatureCollection', 'features': [{'type': 'Feature', 'geometry': {'type': 'Polygon', 'coordinates': [[[111.38652, -0.441704] ],[111.386491,-0.441687],[111.386448,-0.441674],[111.38638,-0.441672],[111.386337,-0.441671],[111.38632,-0.441731],[111.386276,-0.44177],[111.386237,-0.441789] [111.386211,-0.44178],[111.386155,-0.441784],[111.386148,-0.441789],[111.386124,-0.441869],[111.386095,-0.441935],[111.386117,-0.441967],[111.386147,-0.441963] [111.386172,-0.441959],[111.386236,-0.441996],[111.386296,-0.441963],[111.386345,-0.441943],[111.386404,-0.441944],[111.386461,-0.441915],[111.386464,-0.441889],[ 111.386489, -0.441861], [111.386556, -0.441819], [111.38655, -0.441719], [111.38652, -0.441704]]]}}]}
我想对数据库进行循环以获取所有这些字符串并将这些 geojson 字符串中的每一个单独存储在我自己的 SQLite/Spatialite 数据库中(因此每行 1 个 geojson 字符串)之后我希望能够可视化多边形单独或将它们从数据库中处理成 1 个大地理文件。我的问题是:如何最好地将这些 geojson 字符串处理为 SQlite/Spatialite(?) 我可以将它们作为 geojson 字符串填充到我的数据库中(就像现在这样),但我认为这没有意义,因为你之后无法想象它们。此外,我尝试将它们作为字符串加载到 SQlite 数据库的 TEXT 列中,但它会产生错误,因为 SQlite 将它们视为字典。那么,在什么数据库(Sqlite 或 Spatialite)和什么列类型中,我可以最好地存储它们(GEOMETRY?)以供进一步处理,我如何使用 python3 在该列中获取那些 geojson 字符串?我是否需要正则表达式从 geojson 刺中提取坐标并将它们存储在列中,或者有没有办法更容易地做到这一点?任何能帮助我朝正确方向发展的建议都表示感谢。