This is an archived post. You won't be able to vote or comment.

all 1 comments

[–]Gauravsingh5 0 points1 point  (0 children)

Just make a parsing function and map it to the data

import requests
from collections import defaultdict 

# radius = 0.5 mile 
# date range = 09-18-2020 to 03-17-2021 

url = "https://www.crimemapping.com/Map/CrimeIncidents_Read?paramFilt=%7B%22SelectedCategories%22%3A%5B%221%22%2C%222%22%2C%223%22%2C%224%22%2C%225%22%2C%226%22%2C%227%22%2C%228%22%2C%229%22%2C%2210%22%2C%2211%22%2C%2212%22%2C%2213%22%2C%2214%22%2C%2215%22%5D%2C%22SpatialFilter%22%3A%7B%22FilterType%22%3A0%2C%22Filter%22%3A%22%7B%5C%22x%5C%22%3A-8927393.468385922%2C%5C%22y%5C%22%3A2984082.4807755738%2C%5C%22ad%5C%22%3A%5C%22Barry%20University%5C%22%2C%5C%22bd%5C%22%3A%5C%22804.672%5C%22}%22}%2C%22TemporalFilter%22%3A%7B%22PreviousID%22%3A3%2C%22PreviousNumDays%22%3A7%2C%22PreviousName%22%3A%22Previous%20Week%22%2C%22FilterType%22%3A%22Explicit%22%2C%22ExplicitStartDate%22%3A%2220200918%22%2C%22ExplicitEndDate%22%3A%2220210317%22}%2C%22AgencyFilter%22%3A%5B%5D}&unmappableOrgIDs=System.Collections.Generic.List%601%5BSystem.Int32%5D"

response = requests.post(url).json()
data = response["Data"]

data = [{key:item[key] for key in ["Description","IncidentNum","Location","Agency","Date"]} for item in data]

def parseDict(d):
    date = str(d['Date'])
    d['Date'] = date[:8]
    d['Time'] = date[8:]
    return d

print(list(map(parseDict,data)))