I've been provided a JSON output in the sample below and tasked with getting this into a point feature class somehow.
<SPAN class="punctuation token">[</SPAN>
<SPAN class="punctuation token">{</SPAN>
<SPAN class="string token">"Name"</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="string token">"w1"</SPAN><SPAN class="punctuation token">,</SPAN>
<SPAN class="string token">"Long"</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="string token">"-60.44"</SPAN><SPAN class="punctuation token">,</SPAN>
<SPAN class="string token">"Lat"</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="string token">"21.60"</SPAN><SPAN class="punctuation token">,</SPAN>
<SPAN class="string token">"table"</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="punctuation token">[</SPAN>
<SPAN class="punctuation token">[</SPAN>
<SPAN class="string token">"G310-P:"</SPAN><SPAN class="punctuation token">,</SPAN>
<SPAN class="string token">"84 cfs; Mar 2, 17"</SPAN>
<SPAN class="punctuation token">]</SPAN><SPAN class="punctuation token">,</SPAN>
<SPAN class="punctuation token">[</SPAN>
<SPAN class="string token">"G251-P:"</SPAN><SPAN class="punctuation token">,</SPAN>
<SPAN class="string token">"0 cfs; Mar 2, 17"</SPAN>
<SPAN class="punctuation token">]</SPAN>
<SPAN class="punctuation token">]</SPAN><SPAN class="punctuation token">,</SPAN>
<SPAN class="string token">"Heading"</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="string token">"315"</SPAN>
<SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">,</SPAN>
<SPAN class="punctuation token">{</SPAN>
<SPAN class="string token">"Name"</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="string token">"w2"</SPAN><SPAN class="punctuation token">,</SPAN>
<SPAN class="string token">"Long"</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="string token">"-60.32"</SPAN><SPAN class="punctuation token">,</SPAN>
<SPAN class="string token">"Lat"</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="string token">"21.63"</SPAN><SPAN class="punctuation token">,</SPAN>
<SPAN class="string token">"table"</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="punctuation token">[</SPAN>
<SPAN class="punctuation token">[</SPAN>
<SPAN class="string token">"S362-P:"</SPAN><SPAN class="punctuation token">,</SPAN>
<SPAN class="string token">"136 cfs; Mar 2, 17"</SPAN>
<SPAN class="punctuation token">]</SPAN>
<SPAN class="punctuation token">]</SPAN><SPAN class="punctuation token">,</SPAN>
<SPAN class="string token">"Heading"</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="string token">"0"</SPAN>
<SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">,</SPAN>
<SPAN class="punctuation token">{</SPAN>
<SPAN class="string token">"Name"</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="string token">"w2"</SPAN><SPAN class="punctuation token">,</SPAN>
<SPAN class="string token">"Long"</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="string token">"-60.35"</SPAN><SPAN class="punctuation token">,</SPAN>
<SPAN class="string token">"Lat"</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="string token">"21.37"</SPAN><SPAN class="punctuation token">,</SPAN>
<SPAN class="string token">"table"</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="punctuation token">[</SPAN>
<SPAN class="punctuation token">[</SPAN>
<SPAN class="string token">"S10A-C:"</SPAN><SPAN class="punctuation token">,</SPAN>
<SPAN class="string token">"0 cfs; Mar 2, 17"</SPAN>
<SPAN class="punctuation token">]</SPAN><SPAN class="punctuation token">,</SPAN>
<SPAN class="punctuation token">[</SPAN>
<SPAN class="string token">"S10C-C:"</SPAN><SPAN class="punctuation token">,</SPAN>
<SPAN class="string token">"0 cfs; Mar 2, 17"</SPAN>
<SPAN class="punctuation token">]</SPAN><SPAN class="punctuation token">,</SPAN>
<SPAN class="punctuation token">[</SPAN>
<SPAN class="string token">"S10D-C:"</SPAN><SPAN class="punctuation token">,</SPAN>
<SPAN class="string token">"0 cfs; Mar 2, 17"</SPAN>
<SPAN class="punctuation token">]</SPAN>
<SPAN class="punctuation token">]</SPAN><SPAN class="punctuation token">,</SPAN>
<SPAN class="string token">"Heading"</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="string token">"20"</SPAN>
<SPAN class="punctuation token">}</SPAN>
<SPAN class="punctuation token">]</SPAN><SPAN class="line-numbers-rows"><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN></SPAN>I have some existing processes that get close but hoped to run it by the community to see if someone spots the obvious solution before I dillydally down the wrong path for too long. In the JSON sample above, I have Lat/Lon attributes that I would need to get into an array in order to use this def() to convert it to something closer to what I need. My first thought is to create a new attribute called 'rings' so that it would just work with my geo_convert() def:
<SPAN class="keyword token">def</SPAN> <SPAN class="token function">geo_convert</SPAN><SPAN class="punctuation token">(</SPAN>ring_string<SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">:</SPAN>
<SPAN class="keyword token">from</SPAN> json <SPAN class="keyword token">import</SPAN> loads<SPAN class="punctuation token">,</SPAN> dumps
rings <SPAN class="operator token">=</SPAN> loads<SPAN class="punctuation token">(</SPAN>ring_string<SPAN class="punctuation token">)</SPAN>
feat_coll <SPAN class="operator token">=</SPAN> <SPAN class="punctuation token">{</SPAN><SPAN class="string token">'type'</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="string token">'FeatureCollection'</SPAN><SPAN class="punctuation token">,</SPAN>
<SPAN class="string token">'features'</SPAN><SPAN class="punctuation token">:</SPAN><SPAN class="punctuation token">[</SPAN><SPAN class="punctuation token">]</SPAN><SPAN class="punctuation token">}</SPAN>
<SPAN class="keyword token">for</SPAN> ring <SPAN class="keyword token">in</SPAN> rings<SPAN class="punctuation token">:</SPAN>
feat_coll<SPAN class="punctuation token">[</SPAN><SPAN class="string token">'features'</SPAN><SPAN class="punctuation token">]</SPAN><SPAN class="punctuation token">.</SPAN>append<SPAN class="punctuation token">(</SPAN>
<SPAN class="punctuation token">{</SPAN><SPAN class="string token">'type'</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="string token">'Feature'</SPAN><SPAN class="punctuation token">,</SPAN>
<SPAN class="string token">'geometry'</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="punctuation token">{</SPAN>
<SPAN class="string token">'type'</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="string token">'Point'</SPAN><SPAN class="punctuation token">,</SPAN>
<SPAN class="string token">'coordinates'</SPAN><SPAN class="punctuation token">:</SPAN> ring<SPAN class="punctuation token">[</SPAN><SPAN class="string token">'rings'</SPAN><SPAN class="punctuation token">]</SPAN><SPAN class="punctuation token">[</SPAN><SPAN class="number token">0</SPAN><SPAN class="punctuation token">]</SPAN>
<SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">)</SPAN>
<SPAN class="keyword token">return</SPAN> dumps<SPAN class="punctuation token">(</SPAN>feat_coll<SPAN class="punctuation token">)</SPAN> <SPAN class="line-numbers-rows"><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN></SPAN>Any ideas on what I could do?