python创建ArcGIS shape文件的实现


Posted in Python onDecember 06, 2019

工作中遇到了一个需求,需要把一段json文本转化成ArcGIS shape文件,想来想去,还是考虑用python来实现。

直接上代码

import shapefile
import json
import os
 
#shapefile="polygon.shp";
#jsonfile="社区网格.json";
 
def run():
  data=readJSON()
  datalist=data["list"]
  file=shapefile.Writer(target="社区网格.shp",shapeType=shapefile.POLYGON,autoBalance=True);
  #设置属性信息
  file.field('nere', 'C', '40') #'SECOND_FLD'为字段名称,C代表数据类型为字符串,长度为40
  file.field('fileName', 'C', '40')
  file.field('url', 'C', '40')
  file.field('photo', 'C', '40')
  file.field('netGrnereNum', 'C', '40')
  file.field('color', 'C', '40')
  file.field('num', 'C', '40')
  file.field('lat', 'C', '40')
  file.field('lon', 'C', '40')
  file.field('togriga', 'C', '40')
  file.field('gudumji', 'C', '40')
  file.field('memo', 'C', '40')
 
  #写入数据
  for item in datalist:
    nere=item["nere"]
    fileName = item["fileName"]
    url = item["url"]
    photo = item["photo"]
    netGrnereNum = item["netGrnereNum"]
    color = item["color"]
    num = item["num"]
    lat = item["lat"]
    lon = item["lon"]
    togriga = item["togriga"]
    gudumji = item["gudumji"]
    memo = item["memo"]
    polysStr = item["hotinfo"]
    polys=parsing(polysStr);
    #写入
    file.poly(polys=polys)
    file.record(nere,fileName,url,photo,netGrnereNum,color,num,lat,lon,togriga,gudumji,memo)
    print("-------写入成功---------")
  #保存文件
  file.save("社区网格.shp")
 
#读取json文件
def readJSON():
  f = open("社区网格.json", "r",encoding="utf-8") # 设置文件对象
  _str = f.read() # 将txt文件的所有内容读入到字符串str中
  f.close() # 关闭文件
  print("读取json完成")
  if _str.startswith(u'\ufeff'):
    _str = _str.encode('utf8')[3:].decode('utf8')
  data = json.loads(_str,encoding='utf8')
  return data;
  #print(data)
 
#数据解析
def parsing(text):
  data=[]
  strs=text.split(",");
  for line in strs:
    xy=line.split(" ");
    x_y=[float(xy[0]),float(xy[1])]
    data.append(x_y)
  _data=[];
  _data.append(data)
  return _data;
 
 
if __name__=="__main__":
  print("执行程序!!!");
  run();
  print("程序结束!!!");

以上这篇python创建ArcGIS shape文件的实现就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python时间整形转标准格式的示例分享
Feb 14 Python
浅谈django中的认证与登录
Oct 31 Python
python算法表示概念扫盲教程
Apr 13 Python
python简单图片操作:打开\显示\保存图像方法介绍
Nov 23 Python
Python网页正文转换语音文件的操作方法
Dec 09 Python
Apache,wsgi,django 程序部署配置方法详解
Jul 01 Python
Numpy之reshape()使用详解
Dec 26 Python
python+requests接口压力测试500次,查看响应时间的实例
Apr 30 Python
解决pycharm debug时界面下方不出现step等按钮及变量值的问题
Jun 09 Python
python Socket网络编程实现C/S模式和P2P
Jun 22 Python
基于Python 的语音重采样函数解析
Jul 06 Python
Python变量格式化输出实现原理解析
Aug 06 Python
使用pyshp包进行shapefile文件修改的例子
Dec 06 #Python
利用pyshp包给shapefile文件添加字段的实例
Dec 06 #Python
详解Python在使用JSON时需要注意的编码问题
Dec 06 #Python
用python求一重积分和二重积分的例子
Dec 06 #Python
解决Numpy中sum函数求和结果维度的问题
Dec 06 #Python
numpy按列连接两个维数不同的数组方式
Dec 06 #Python
使用Python实现分别输出每个数组
Dec 06 #Python
You might like
FCKeditor添加自定义按钮
2008/03/27 PHP
输入值/表单提交参数过滤有效防止sql注入的方法
2013/12/25 PHP
thinkphp配置文件路径的实现方法
2016/08/30 PHP
PHP封装mysqli基于面向对象的mysql数据库操作类与用法示例
2019/02/25 PHP
Jquery增加鼠标中间功能mousewheel的实例代码
2013/09/05 Javascript
jQuery获取动态生成的元素示例
2014/06/15 Javascript
jquery实现选中单选按钮下拉伸缩效果
2015/08/06 Javascript
用jQuery.ajaxSetup实现对请求和响应数据的过滤
2016/12/20 Javascript
html5 canvas 详细使用教程
2017/01/20 Javascript
JavaScript中利用构造器函数模拟类的方法
2017/02/16 Javascript
js 调用百度分享功能
2017/02/27 Javascript
uni-app自定义导航栏按钮|uniapp仿微信顶部导航条功能
2019/11/12 Javascript
JavaScript定时器常见用法实例分析
2019/11/15 Javascript
jQuery实现倒计时功能完整示例
2020/06/01 jQuery
[02:51]2014DOTA2 TI小组赛总结中国军团全部进军钥匙球馆
2014/07/15 DOTA
[06:59]DOTA2-DPC中国联赛3月7日Recap集锦
2021/03/11 DOTA
python使用chardet判断字符串编码的方法
2015/03/13 Python
python入门教程之识别验证码
2017/03/04 Python
浅谈python编译pyc工程--导包问题解决
2019/03/20 Python
Python短信轰炸的代码
2020/03/25 Python
如何通过python实现IOU计算代码实例
2020/11/02 Python
scrapy redis配置文件setting参数详解
2020/11/18 Python
微信小程序实现可实时改变转速的css3旋转动画实例代码
2018/09/11 HTML / CSS
CSS3中currentColor关键字的妙用
2016/02/27 HTML / CSS
CSS3 旋转立方体问题详解
2020/01/09 HTML / CSS
欧洲顶级体育电子商务网站:SportsShoes.com
2018/03/27 全球购物
美国电子产品主要品牌的授权在线零售商:DataVision
2019/03/23 全球购物
专科毕业生求职简历的自我评价
2013/10/12 职场文书
给排水工程师岗位职责
2013/11/21 职场文书
简历的个人自我评价范文
2014/01/03 职场文书
邓小平理论心得体会
2014/09/09 职场文书
公务员群众路线专题民主生活会发言材料
2014/09/17 职场文书
2014县委书记党的群众路线教育实践活动对照检查材料思想汇报
2014/09/22 职场文书
2015年财务个人工作总结范文
2015/05/22 职场文书
邹越演讲观后感
2015/06/15 职场文书
宣传部部长竞选稿
2015/11/21 职场文书