Skip to content

Latest commit

 

History

History
102 lines (78 loc) · 1.98 KB

README.md

File metadata and controls

102 lines (78 loc) · 1.98 KB

esri-dump

A Node module to assist with pulling data out of an ESRI ArcGIS REST server into GeoJSON or ImageryURLs

Based On PyEsriDump by @iandees

Install

npm install -g esri-dump

API

exposes a function, which if you give it a url, will return a stream of the geojson features.

import EsriDump from 'esri-dump';
const esri = new EsriDump(url);

const  featureCollection = {
  type: 'FeatureCollection',
  features: []
}

esri.fetch();

esri.on('type', (type) => {
    //Emitted before any data events
    //emits one of
    // - `MapServer'
    // - `FeatureServer'
});

esri.on('feature', (feature) => {
    featureCollection.features.push(feature);
});

esri.on('done', () => {
    doSomething(null, featureCollection)
});

esri.on('error', (err) => {
    doSomething(err);
});

Command Line

Streams a geojson feature collection to stdout

esri-dump fetch http://services2.bhamaps.com/arcgis/rest/services/AGS_jackson_co_il_taxmap/MapServer/0 > output.geojson

Data Output

FeatureServer and MapServer

Output from an ESRI FeatureServer or an ESRI MapServer is returned as GeoJSON as in the example below.

{
    "type": "Feature",
    "properties": {
        "objectid": 1
    },
    "geometry": {
        "type": "Polygon",
        "coordinates": [
            [
                [
                    -65.6231319,
                    31.7127058
                ],
                [
                    -65.6144566,
                    31.7020286
                ],
                [
                    -65.6231319,
                    31.698692
                ],
                [
                    -65.6231319,
                    31.7127058
                ]
            ]
        ]
    }
}

Development

esri-dump is written in TypeScript. To compile it locally, run:

npx tsc

See /dist for the compiled code.