In [3]:
from arcgis.gis import GIS
from arcgis.mapping import WebMap, WebScene
from arcgis.widgets import FeatureSet, Layer, MapView
from arcgis.features import summarize_data, FeatureLayer, manage_data

from IPython.display import display
import pandas as pd
import json
import requests 

'''
main fields:
------------
Client ID
- 3hEOA0ytHFO2XH3w

Client Secret:
- f3721c85ba2d4c919a792f6cf427ca8e

Temporary Token
- q4Drp_tg2sHmcDXdrmrepO7y1v69kfN03rP6vdr9Ie89Q2HEIZhg_O5TXoH3aixk44X_o9i9XMIWOP1ZHPe4XrsWesWOx0CY0SVWsiO-SdsrwuXnIJVv8nco3D6ZysVY72NBF4KEqe490ccLdOgf6Q..

Service Details:
----------------
Geocoding and Place Search
- https://utility.arcgis.com/usrsvcs/appservices/z2N0LuaQIPTYndoo/rest/services/World/GeocodeServer/findAddressCandidates

TODO
HANDLE UPDATE on feature layers
'''

from data.geographic import gisConn, gisUser, gisPass
gis = GIS(gisConn, gisUser, gisPass)


Out[3]:
'\nmain fields:\n------------\nClient ID\n- 3hEOA0ytHFO2XH3w\n\nClient Secret:\n- f3721c85ba2d4c919a792f6cf427ca8e\n\nTemporary Token\n- q4Drp_tg2sHmcDXdrmrepO7y1v69kfN03rP6vdr9Ie89Q2HEIZhg_O5TXoH3aixk44X_o9i9XMIWOP1ZHPe4XrsWesWOx0CY0SVWsiO-SdsrwuXnIJVv8nco3D6ZysVY72NBF4KEqe490ccLdOgf6Q..\n\nService Details:\n----------------\nGeocoding and Place Search\n- https://utility.arcgis.com/usrsvcs/appservices/z2N0LuaQIPTYndoo/rest/services/World/GeocodeServer/findAddressCandidates\n\nSuggestions\n- https://utility.arcgis.com/usrsvcs/appservices/z2N0LuaQIPTYndoo/rest/services/World/GeocodeServer/suggest\n\nReverse Geocoding\n- https://utility.arcgis.com/usrsvcs/appservices/z2N0LuaQIPTYndoo/rest/services/World/GeocodeServer/reverseGeocode\n\nBatch Geocoding\n- https://utility.arcgis.com/usrsvcs/appservices/z2N0LuaQIPTYndoo/rest/services/World/GeocodeServer/geocodeAddresses\n\n'

In [6]:
def get_token():
    params = {
        'client_id': "3hEOA0ytHFO2XH3w",
        'client_secret': "f3721c85ba2d4c919a792f6cf427ca8e",
        'grant_type': "client_credentials"
    }

    request = requests.get('https://www.arcgis.com/sharing/oauth2/token',
                           params=params)
    response = request.json()
    token = response["access_token"]
    return token

#token = get_token()
#token

In [13]:
def token(token, url):    
    '''
    - https://utility.arcgis.com/usrsvcs/appservices/PaxuIDwgHm34KeUH/rest/services/World/GeoenrichmentServer/GeoEnrichment/enrich
    '''
    params = {
    'f': 'json',
    'token': token,
    'studyAreas': '[{"geometry":{"x":-117.1956,"y":34.0572}}]'
    }
    
    url = 'https://utility.arcgis.com/usrsvcs/appservices/PaxuIDwgHm34KeUH/rest/services/World/GeoenrichmentServer/GeoEnrichment/enrich'
    data = requests.post(url, params=params)
    
    return data.json(), data

dataJson, data = token(get_token, 'https://utility.arcgis.com/usrsvcs/appservices/PaxuIDwgHm34KeUH/rest/services/World/GeoenrichmentServer/GeoEnrichment/enrich')
data


Out[13]:
<Response [200]>

In [21]:
def searchGis(gis, key = 'world'):
    items = gis.content.search(key)
    for item in items:
        display(item)

def getFeatureLayers(item):
    '''
    stockTest = company performance
    cityToCompanyTest = company to city comparison    
    '''
    layers = item.layers
    fset = layers[0].query()
#    display(fset.df)
    return fset

search_result = gis.content.search('city')
display(search_result)
item = search_result[1]
cityToCompany_fset = getFeatureLayers(item)

search_result = gis.content.search('stock')
display(search_result)
item = search_result[3]
companyStat_fset = getFeatureLayers(item)


[<Item title:"city_stock_country" type:Web Mapping Application owner:w.maquire>,
 <Item title:"cityData_1" type:Feature Service owner:w.maquire>,
 <Item title:"cToc" type:Application owner:w.maquire>,
 <Item title:"city_stock_country" type:Web Map owner:w.maquire>,
 <Item title:"city_stock_country" type:Code Attachment owner:w.maquire>,
 <Item title:"cityData_1" type:CSV owner:w.maquire>]
[<Item title:"city_stock_country" type:Web Mapping Application owner:w.maquire>,
 <Item title:"StockDetail" type:CSV owner:w.maquire>,
 <Item title:"city_stock_country" type:Web Map owner:w.maquire>,
 <Item title:"StockDetail" type:Feature Service owner:w.maquire>,
 <Item title:"city_stock_country" type:Code Attachment owner:w.maquire>]

In [ ]: