Python中shapefile转换geojson的示例
作者:staHuri 发布时间:2023-08-03 19:05:04
标签:python,shapefile,geojson,转换
shapefile转换geojson
import shapefile
import codecs
from json import dumps
# read the shapefile
def shp2geo(file="line出产.shp"):
reader = shapefile.Reader(file)
fields = reader.fields[1:]
field_names = [field[0] for field in fields]
buffer = []
for sr in reader.shapeRecords():
record = sr.record
record = [r.decode('gb2312', 'ignore') if isinstance(r, bytes)
else r for r in record]
atr = dict(zip(field_names, record))
geom = sr.shape.__geo_interface__
buffer.append(dict(type="Feature", geometry=geom, properties=atr))
# write the GeoJSON file
geojson = codecs.open(file.split('.')[0] + "-geo.json", "w", encoding="gb2312")
geojson.write(dumps({"type": "FeatureCollection", "features": buffer}, indent=2) + "\n")
geojson.close()
if __name__ == '__main__':
# import os
# for z,x,c in os.walk('.'):
# for zz in c:
# if zz.endswith(".shp"):
# shp2geo(zz)
# shp2geo(file='D.shp')
shp2geo(file='ttttttttttt.shp')
来源:https://blog.csdn.net/staHuri/article/details/80838226


猜你喜欢
- 以下为在asp中增加一个sql server2000用户函数,并为建立一个数据库,给他dbo的权限。注意:sql server的验证方式不要
- 说明C# 调用 Python 程序有多种方式,本篇用的是第 4 种:nuget的ironPython;用 c/c++ 调用python,再封
- 一、简单使用def TestLogBasic(): import logging  
- 写在前面作为一名找不到工作的爬虫菜鸡人士来说,登陆这一块肯定是个比较大的难题。 从今天开始准备一点点对大型网站进行逐个登陆破解。加
- display_errors 错误回显,一般常用语开发模式,但是很多应用在正式环境中也忘记了关闭此选项。错误回显可以暴露出非常多的敏感信息,
- Python 登录网站详解及实例对于大部分论坛,我们想要抓取其中的帖子分析,首先需要登录,否则无法查看。这是因为 HTTP 协议是一个无状态
- 用python实现简单Server/Client文件传输:服务器端:#!/usr/bin/pythonimport SocketServer
- 1、新建链接服务器 在图1中选中“链接服务器”,右键选择“新建链接服务器”,如图2,配置相关参数。2、配置相关参数在“常规”选项中
- 本文实例讲述了python判断字符串是否纯数字的方法。分享给大家供大家参考。具体如下:判断的代码如下,通过异常判断不能区分前面带正负号的区别
- 可能有些地方翻译得不好,请见谅在这个冠冕堂皇的标题之下,我想回答一个土方,有人在博客提出很久了。该土方很好的描述了很多图标设计师所面临的典型
- atan 和 atan2 都是反正切函数,返回的都是弧度对于两点形成的直线,两点分别是 point(x1,y1) 和 point(x2,y2
- 官网下载就好, https://www.python.org/downloads/release/python-352/用installer
- 早听说用python做网络爬虫非常方便,正好这几天单位也有这样的需求,需要登陆XX网站下载部分文档,于是自己亲身试验了一番,效果还不错。本例
- 如果你需要遍历数字序列,可以使用内置range()函数。它会生成数列。range()语法:range(start,end,step=1):顾
- aspjpeg版本:v1.801 将pic.jpg打上logo.png,可根据图片大小对水印图做适当调整 &
- 背景接口域名没有写死,而是动态获取。具体实现就是 通过读取一个静态json文件,来设置真实的接口域名。好处是原域名有可能被封,这样可以直接后
- 本文实例讲述了Python常见数据结构之栈与队列用法。分享给大家供大家参考,具体如下:Python常见数据结构之-栈首先,栈是一种数据结构。
- 实际应用中,会遇到需要把表的某些行转换成列,或者把列转换成行的情况。比如一张表在数据库中是这样的:图1但是,需要的结果可能是这样:图2这个时
- 一. 问题:在写调用谷歌翻译接口的脚本时,老是报错,我使用的的是googletrans这个模块中Translator的translate方法
- Python 三元运算符Python 三元运算符用于根据条件选择两个值之一。它是 if-else 语句的一个缩影,它将两个值之一分配给一个变