原文:https://github.com/aitorcalero/arcgis-online-python-scripts/blob/master/AGOLOrg_03.py
使用python脚本来操作portal,其实在使用javaScript的时候,也可以用类似的方式,以供参考:
import Tkinter, Tkconstants, tkFileDialog
|
|
# Script that generates a set of groups in ArcGIS Online from a list in a txt file
|
|
def openGroupFileDialog():
|
|
return tkFileDialog.askopenfilename(filetypes = (("Txt File","*.txt"),("All Files","*.*")))
|
|
def generateToken(portal,username,password):
|
|
parameters = urllib.urlencode({'username': username, 'password': password, 'client':'requestip','f':'json'})
|
|
request = portal + '/sharing/rest/generateToken?'
|
|
response = json.loads(urllib.urlopen(request, parameters).read())
|
|
if not 'token' in response:
|
|
print "Bad user or password"
|
|
token = response['token']
|
|
tokenExpires = response['expires']
|
|
tokenExpiresReadable = time.strftime('%Y-%m-%d %I:%M:%S %p (%Z)', time.localtime(tokenExpires/1000))
|
|
print "Token generated. Expires " +tokenExpiresReadable
|
|
def createGroup(portal, groupTitle, groupDescription, token):
|
|
params = urllib.urlencode({'title': groupTitle,
|
|
'description': groupDescription,
|
|
'tags':'destacado,contenido,demo,esri,spain', #TODO list of properties per group
|
|
'access':'org', 'token': token, 'f':'json'})
|
|
request = portal + '/sharing/rest/community/createGroup?'
|
|
response = json.loads(urllib.urlopen(request, params).read())
|
|
data = urllib.urlopen(request, params).read()
|
|
print "Group " + groupTitle +" created"
|
|
# add Items to the organizations
|
|
def addItemsToGroup(portal, groupID, items, token):
|
|
params = urllib.urlencode({'groups': groupID, 'token': token, 'f':'json'})
|
|
request = portal + '/sharing/rest/content/items/' + item + '/share'
|
|
response = json.loads(urllib.urlopen(request, params).read())
|
|
print "Added Item #" + item
|
|
def getOrganizationId(portal, token):
|
|
params = urllib.urlencode({'token': token, 'f':'json'})
|
|
request = portal + '/sharing/rest/portals/self?'
|
|
response = json.loads(urllib.urlopen(request, params).read())
|
|
# Change organization properties
|
|
def setOrganizationProperties(portal, organizationId, properties,token):
|
|
properties['token'] = token
|
|
params = urllib.urlencode(properties)
|
|
request = portal + '/sharing/rest/portals/' + organizationId + '/update?'
|
|
response = json.loads(urllib.urlopen(request, params).read())
|
|
def readGroupsFromTxt(path):
|
|
grupo = [line.strip() for line in open(path)]
|
|
portal = 'https://www.arcgis.com'
|
|
# Ask named user credentials
|
|
customer = raw_input("Customer Name [{0}]: ".format(customer)) or customer
|
|
username = raw_input("Username [{0}]: ".format(username)) or username
|
|
password = getpass.getpass() or raw_input("Password [{0}]: ".format("fomentofomento"))
|
|
token = generateToken(portal,username,password)
|
|
grupos = readGroupsFromTxt(openGroupFileDialog())
|
|
groupID = createGroup(portal, grupo,
|
|
'Grupo de ' + grupo + ' del ' + customer, token)
|
|
main()
arcgis-online-python-scripts相关推荐
- 第一章 ArcGIS Pro python高级脚本教程介绍
文章的很多内容来自于ESRI出版的 Advanced Python Scripting for ArcGIS Pro 一书,该书也提供了实验数据与免费的PDF书籍,可以通过官网链接下载. 不想仅仅做一 ...
- arcgis下的python编程-面向ArcGIS的Python脚本编程
面向arcgis的python脚本编程是一本指导ArcGIS for Desktop专业用户进行Python开发的指南,本书将教会您如何通过编写Python代码处理空间数据并在ArcGIS中自动化实现 ...
- 基于arcgis的python脚本编程视频-面向ArcGIS的Python脚本编程 PDF 高清版
给大家带来的一篇关于Python相关的电子书资源,介绍了关于ArcGIS.Python.脚本编程方面的内容,本书是由人民邮电出版社出版,格式为PDF,资源大小49.9 MB,Paul编写,目前豆瓣.亚 ...
- arcgis下的python编程-基于ArcGIS的Python编程秘笈(第2版)
基于ArcGIS的Python编程秘笈(第2版) 译者简介 审阅人简介 1 面向ArcGIS的Python语言基础 1.1 使用IDLE进行Python脚本开发 1.1.1 Python Shell窗 ...
- 运行pip list报错:Fatal error in launcher: Unable to create process using...python\Scripts\pip.exe list
文章目录 更新 今天重装了电脑,将python系统变量添加了,但是pip打不开 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 更新下pip就好了- - python -m pip i ...
- python 脚本将视频转化成图片 | python scripts to convert video to pictures
python 脚本将视频转化成图片 | python scripts to convert video to pictures python video_to_images.py 运行时,修改输入.输 ...
- python for arcgis_面向ArcGIS的Python脚本编程 ([美]赞德伯根) 中文pdf扫描版[50MB]
Python作为一种高级程序设计语言,凭借其简洁.易读及可扩展性日渐成为程序设计领域备受推崇的语言.使用Python作为ArcGIS的脚本语言将大大提升ArcGIS数据处理的效率,更好地实现ArcGI ...
- arcgis工具python源码_面向Arcgis的python脚本编程_数据
[实例简介] <面向ArcGIS的Python脚本编程>是一本指导ArcGIS for Desktop专业用户进行Python开发的指南.该书将教会您如何通过编写Python代码处理空间数 ...
- arcgis的python接口_arcgis-Python的ArcGIS API-Esri Screenshots
作者:Esri ### 作者邮箱:python@esri.com ### 首页:https://developers.arcgis.com/python/ ### 文档:None ### 下载链接 # ...
- 《基于ArcGIS的Python编程秘笈(第2版)》——第1章 面向ArcGIS的Python语言基础
本节书摘来自异步社区<基于ArcGIS的Python编程秘笈(第2版)>一书中的第1章,第1.1节,作者: [美]Eric Pimpler(派普勒) 更多章节内容可以访问云栖社区" ...
最新文章
- 自学python推荐书籍2019-2019最强Python书单!
- python读文件每一行、并把这行替换-Python按行读文件
- noe4j 多层关系查询
- 关于socket组播和ssdp(二)
- 微机笔记6——输入输出控制
- Eclipse 安装 Fatjar.jar失败的解决方法
- for update引发了血案
- 稞麦显示无法连接服务器,Modern Ops无法连接服务器是什么原因
- UltraCompare v21.00分析
- 沁恒微USB蓝牙单片机CH573F初步熟悉
- Java中涉及到金钱计算方法
- 第三方支付平台:微信支付接口
- 图像处理——中值滤波
- cad和html5哪个好,最好用的5个CAD软件 你用的是哪款呢
- 【信号处理】内插器原理和MATLAB仿真
- Unirech阿里云国际版云服务器ecs的应用场景有哪些?
- 在Ubuntu16.04 中安装g2o并运行g2o_viewer
- JavaFx - 按下Button 一直触发按钮事件
- centos8.5 Vsftpd 搭建FTP服务器
- Word模板文件,替换内容 文本、图片、表格、列表、区块、嵌套等
热门文章
- 计算机网络实验(华为eNSP模拟器)——第八章 动态主机配置协议(DHCP)
- 数据结构题:根据所给权值设计相应的哈夫曼树,并设计哈夫曼编码
- c语言删除文件第一行_ElasticSearch 文档的删除和批量操作
- MySQL服务MySQL+MHA高可用服务集群搭建
- 华为S5700系列交换机配置文件导出、导入
- 一个详细的JTable使用例子
- mysql记录相互关系查询_MySQL关系表查询两个表的数据
- ajax拿table里的th值,Jquery Ajax 异步设置Table中某列的值
- php 数据库 加载图片,图片显示不出来,但是数据库里有显示
- java 创建文件夹的方法_Java创建文件夹的方法