要保存PostGIS几何类型的GeoJSON,可以使用以下代码示例:
import psycopg2
import json
# 连接到PostgreSQL数据库
conn = psycopg2.connect(database="your_database", user="your_user", password="your_password", host="your_host", port="your_port")
cursor = conn.cursor()
# 执行查询语句
cursor.execute("SELECT ST_AsGeoJSON(geom) FROM your_table;")
# 获取查询结果
rows = cursor.fetchall()
# 关闭数据库连接
cursor.close()
conn.close()
# 创建一个空的GeoJSON对象
geojson = {
"type": "FeatureCollection",
"features": []
}
# 将查询结果转换为GeoJSON格式
for row in rows:
feature = {
"type": "Feature",
"geometry": json.loads(row[0])
}
geojson["features"].append(feature)
# 将GeoJSON保存到文件
with open("output.geojson", "w") as file:
json.dump(geojson, file)
在上述代码中,需要替换以下参数:
your_database
:你的数据库名称your_user
:你的数据库用户名your_password
:你的数据库密码your_host
:你的数据库主机地址your_port
:你的数据库端口号your_table
:你的表名代码首先连接到PostgreSQL数据库,然后执行查询语句以获取PostGIS几何类型的GeoJSON数据。接下来,将查询结果转换为GeoJSON格式,并将其保存到文件中(在此示例中为"output.geojson")。
上一篇:保存Polars的分类映射