web-services - 如何从 ArcGIS Online 地图中抓取数据?
问题描述
我想从 ArcGIS 地图中抓取数据。当我们单击红色特征时,以下地图会弹出。如何以编程方式访问该数据?
链接:https ://cslt.maps.arcgis.com/apps/MapSeries/index.html?appid=2c9f3e737cbf4f6faf2eb956fa26cdc5
解决方案
注意:请尊重您访问的任何 ArcGIS Online 项目的访问和使用限制。如有疑问,请勿保存他人数据的副本。
ArcGIS Online REST 接口使获取 ArcGIS Online 项目背后的数据变得相对简单。您需要使用可以发出 HTTP 请求并解析 JSON 文本的环境。大多数当前的编程语言要么具有内置的这些功能,要么具有具有这些功能的库。
这是您的代码可以遵循的一般工作流程。
使用应用 ID 和项目数据端点查看应用的 JSON 文本:
https://www.arcgis.com/sharing/rest/content/items/2c9f3e737cbf4f6faf2eb956fa26cdc5/data
搜索该文本
webmap
并查看该应用程序使用以下 Web 地图:d2b4a98c39fd4587b99ac0878c420125
7b1af1752c3a430184fbf7a530b5ec65
c6e9d07e4c2749e4bfe23999778a3153
查看任何这些 web 地图的项目数据端点:
https://www.arcgis.com/sharing/rest/content/items/d2b4a98c39fd4587b99ac0878c420125/data
列表
operationalLayers
指定您可以从中获取数据的要素图层 URL。例如:https://services2.arcgis.com/gWRYLIS16mKUskSO/arcgis/rest/services/VHR_Areas/FeatureServer/0
然后只需使用 a of (或任何您想要的)和 an of运行查询:
where
0=0
outFields
*
f=html
如果您想查看人类可读的请求表和结果,请改用。请注意,要素服务对每个请求可以获得的要素数量有限制,因此您可能希望按几何或属性值进行过滤。阅读文档以了解您可以对要素服务查询进行的所有操作。
推荐阅读
- python - 为什么浏览器显示的 HTML 与 BeautifulSoup 和 Requests 返回的不同?
- delphi - 使用 Indy 从服务器向客户端发送文件
- excel - 如何在 excel vba 中编写动态增长的表格?
- mysql - 使用 mySQL 确定志愿者语言/方法插入错误的存储过程
- python - 棉花糖数据类不使用类型提示联合
- python - 物体间物体边缘检测
- reactjs - 无法将 React 应用程序部署到 Github 页面
- javascript - 未捕获的类型错误:创建标记时无法读取未定义的属性“createIcon”
- python - 504 网关在到达端点时超时
- c# - 反序列化 XML 多个命名空间的问题