如何从 ArcGIS Online 地图中抓取数据?



我想从 ArcGIS 地图中抓取数据。当我们单击红色要素时,以下地图会出现一个弹出窗口。如何以编程方式访问该数据?

友情链接 : https://cslt.maps.arcgis.com/apps/MapSeries/index.html?appid=2c9f3e737cbf4f6faf2eb956fa26cdc5

注: 请遵守您访问的任何 ArcGIS Online 项目的访问和使用限制。如有疑问,请勿保存他人数据的副本。

ArcGIS Online REST 界面使得获取 ArcGIS Online 项目背后的数据变得相对简单。您需要使用可以发出 HTTP 请求并解析 JSON 文本的环境。大多数当前的编程语言要么内置了这些功能,要么具有具有这些功能的库。

下面是代码可以遵循的常规工作流。

  1. 使用应用 ID 和项目数据终端节点查看应用的 JSON 文本:

    https://www.arcgis.com/sharing/rest/content/items/2c9f3e737cbf4f6faf2eb956fa26cdc5/data

  2. 在该文本中搜索webmap,并查看应用程序是否使用以下 web 地图:

    • d2b4a98c39fd4587b99ac0878c420125
    • 7b1af1752c3a430184fbf7a530b5ec65
    • c6e9d07e4c2749e4bfe23999778a3153
  3. 查看其中任何 web 地图的项目数据端点:

    https://www.arcgis.com/sharing/rest/content/items/d2b4a98c39fd4587b99ac0878c420125/data

  4. operationalLayers列表指定可从中获取数据的要素图层 URL。例如:

    https://services2.arcgis.com/gWRYLIS16mKUskSO/arcgis/rest/services/VHR_Areas/FeatureServer/0

  5. 然后只需运行一个where0=0(或任何您想要的(和outFields*的查询:

    https://services2.arcgis.com/gWRYLIS16mKUskSO/arcgis/rest/services/VHR_Areas/FeatureServer/0/query?where=0%3D0&outFields=%2A&f=json

    如果您想查看人类可读的请求表单和结果,请改用f=html

    请注意,要素服务对每个请求可获取的要素数量有限制,因此您可能希望按几何或属性值进行过滤。阅读文档以了解可以使用要素服务查询执行的所有操作。

相关内容

  • 没有找到相关文章

最新更新