<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Problems using REST API to generate Tile Packages from World Topo (For Export) in ArcGIS REST APIs and Services Questions</title>
    <link>https://community.esri.com/t5/arcgis-rest-apis-and-services-questions/problems-using-rest-api-to-generate-tile-packages/m-p/276454#M1390</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Using the script below it seems that I can request the generation of tile packages and then download the resulting tpk file generated by ESRI. &amp;nbsp;But when I try and open the package&amp;nbsp;&lt;EM&gt;NOTHING&lt;/EM&gt; shows up in ArcMap. &amp;nbsp;Can't tell what is happening - can't tell what is going wrong. &amp;nbsp;Any ideas?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;
&lt;SPAN style="color: #000080; font-weight: bold;"&gt;import &lt;/SPAN&gt;arcpy
&lt;SPAN style="color: #000080; font-weight: bold;"&gt;import &lt;/SPAN&gt;requests
&lt;SPAN style="color: #000080; font-weight: bold;"&gt;import &lt;/SPAN&gt;pandas &lt;SPAN style="color: #000080; font-weight: bold;"&gt;as &lt;/SPAN&gt;pd
&lt;SPAN style="color: #000080; font-weight: bold;"&gt;import &lt;/SPAN&gt;time
&lt;SPAN style="color: #000080; font-weight: bold;"&gt;import &lt;/SPAN&gt;json



&lt;SPAN style="color: #000080; font-weight: bold;"&gt;def &lt;/SPAN&gt;scrape_tiles(token, input_file, levels):
&amp;nbsp;&amp;nbsp;&amp;nbsp; tpk_grid_df = pd.read_csv(input_file, &lt;SPAN style="color: #660099;"&gt;header&lt;/SPAN&gt;=&lt;SPAN style="color: #0000ff;"&gt;0&lt;/SPAN&gt;)

&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #000080; font-weight: bold;"&gt;for &lt;/SPAN&gt;index,row &lt;SPAN style="color: #000080; font-weight: bold;"&gt;in &lt;/SPAN&gt;tpk_grid_df.iterrows():

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; extent = &lt;SPAN style="color: #008000; font-weight: bold;"&gt;'{"xmin":' &lt;/SPAN&gt;+ &lt;SPAN style="color: #000080;"&gt;str&lt;/SPAN&gt;(row[&lt;SPAN style="color: #008000; font-weight: bold;"&gt;'XMIN'&lt;/SPAN&gt;]) + \
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #008000; font-weight: bold;"&gt;',"ymin":'&lt;/SPAN&gt;+&lt;SPAN style="color: #000080;"&gt;str&lt;/SPAN&gt;(row[&lt;SPAN style="color: #008000; font-weight: bold;"&gt;'YMIN'&lt;/SPAN&gt;]) + \
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #008000; font-weight: bold;"&gt;',"xmax":'&lt;/SPAN&gt;+&lt;SPAN style="color: #000080;"&gt;str&lt;/SPAN&gt;(row[&lt;SPAN style="color: #008000; font-weight: bold;"&gt;'XMAX'&lt;/SPAN&gt;]) + \
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #008000; font-weight: bold;"&gt;',"ymax":'&lt;/SPAN&gt;+&lt;SPAN style="color: #000080;"&gt;str&lt;/SPAN&gt;(row[&lt;SPAN style="color: #008000; font-weight: bold;"&gt;'YMAX'&lt;/SPAN&gt;]) + \
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #008000; font-weight: bold;"&gt;',"spatialReference" : {"wkid" : 4326}}'
&lt;/SPAN&gt;&lt;SPAN style="color: #008000; font-weight: bold;"&gt;
&lt;/SPAN&gt;&lt;SPAN style="color: #008000; font-weight: bold;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;req_url = &lt;SPAN style="color: #008000; font-weight: bold;"&gt;&lt;SPAN&gt;'&lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="https://community.esri.com/external-link.jspa?url=http%3A%2F%2Ftiledbasemaps.arcgis.com%2Farcgis%2Frest%2Fservices%2FWorld_Topo_Map%2FMapServer%2FexportTiles" target="_blank"&gt;http://tiledbasemaps.arcgis.com/arcgis/rest/services/World_Topo_Map/MapServer/exportTiles&lt;/A&gt;&lt;SPAN&gt;?' &lt;/SPAN&gt;&lt;/SPAN&gt;\
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #008000; font-weight: bold;"&gt;'tilePackage=true' &lt;/SPAN&gt;\
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #008000; font-weight: bold;"&gt;'&amp;amp;exportExtent=' &lt;/SPAN&gt;+ extent + \
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #008000; font-weight: bold;"&gt;'&amp;amp;optimizeTilesForSize=true' &lt;/SPAN&gt;\
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #008000; font-weight: bold;"&gt;'&amp;amp;compressionQuality=90' &lt;/SPAN&gt;\
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #008000; font-weight: bold;"&gt;'&amp;amp;exportBy=levelId' &lt;/SPAN&gt;\
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #008000; font-weight: bold;"&gt;'&amp;amp;levels=' &lt;/SPAN&gt;+ &lt;SPAN style="color: #000080;"&gt;str&lt;/SPAN&gt;(levels) + \
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #008000; font-weight: bold;"&gt;'&amp;amp;f=json' &lt;/SPAN&gt;\
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #008000; font-weight: bold;"&gt;'&amp;amp;token=' &lt;/SPAN&gt;+ &lt;SPAN style="color: #000080;"&gt;str&lt;/SPAN&gt;(token[&lt;SPAN style="color: #008000; font-weight: bold;"&gt;'token'&lt;/SPAN&gt;])

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; resp = requests.get(req_url)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; resp_cont_dic = json.loads(resp.content)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; jobID = resp_cont_dic[&lt;SPAN style="color: #008000; font-weight: bold;"&gt;'jobId'&lt;/SPAN&gt;]
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; jobStatus = resp_cont_dic[&lt;SPAN style="color: #008000; font-weight: bold;"&gt;'jobStatus'&lt;/SPAN&gt;]
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #000080; font-weight: bold;"&gt;print&lt;/SPAN&gt;(jobStatus)

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #000080; font-weight: bold;"&gt;while &lt;/SPAN&gt;jobStatus == &lt;SPAN style="color: #008000; font-weight: bold;"&gt;'esriJobSubmitted' &lt;/SPAN&gt;&lt;SPAN style="color: #000080; font-weight: bold;"&gt;or&amp;nbsp; &lt;/SPAN&gt;jobStatus == &lt;SPAN style="color: #008000; font-weight: bold;"&gt;'esriJobExecuting'&lt;/SPAN&gt;:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; time.sleep(&lt;SPAN style="color: #0000ff;"&gt;15&lt;/SPAN&gt;)

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; req_status_url = &lt;SPAN style="color: #008000; font-weight: bold;"&gt;&lt;SPAN&gt;'&lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="https://community.esri.com/external-link.jspa?url=http%3A%2F%2Ftiledbasemaps.arcgis.com%2Farcgis%2Frest%2Fservices%2FWorld_Topo_Map%2FMapServer%2Fjobs%2F" target="_blank"&gt;http://tiledbasemaps.arcgis.com/arcgis/rest/services/World_Topo_Map/MapServer/jobs/&lt;/A&gt;&lt;SPAN&gt;' &lt;/SPAN&gt;&lt;/SPAN&gt;\
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + &lt;SPAN style="color: #000080;"&gt;str&lt;/SPAN&gt;(jobID)\
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + &lt;SPAN style="color: #008000; font-weight: bold;"&gt;'?f=json' &lt;/SPAN&gt;\
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #008000; font-weight: bold;"&gt;'&amp;amp;token=' &lt;/SPAN&gt;+ &lt;SPAN style="color: #000080;"&gt;str&lt;/SPAN&gt;(token[&lt;SPAN style="color: #008000; font-weight: bold;"&gt;'token'&lt;/SPAN&gt;])

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; status_resp = requests.get(req_status_url)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; status_resp_cont = json.loads(status_resp.content)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; jobStatus = status_resp_cont[&lt;SPAN style="color: #008000; font-weight: bold;"&gt;'jobStatus'&lt;/SPAN&gt;]

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #000080; font-weight: bold;"&gt;if &lt;/SPAN&gt;jobStatus == &lt;SPAN style="color: #008000; font-weight: bold;"&gt;'esriJobFailed'&lt;/SPAN&gt;:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #000080; font-weight: bold;"&gt;print&lt;/SPAN&gt;(&lt;SPAN style="color: #008000; font-weight: bold;"&gt;'esriJobFailed'&lt;/SPAN&gt;)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #000080; font-weight: bold;"&gt;break
&lt;/SPAN&gt;&lt;SPAN style="color: #000080; font-weight: bold;"&gt;
&lt;/SPAN&gt;&lt;SPAN style="color: #000080; font-weight: bold;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #808080;"&gt;# GRABBING THE RESULTS
&lt;/SPAN&gt;&lt;SPAN style="color: #808080;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;res_url = &lt;SPAN style="color: #008000; font-weight: bold;"&gt;&lt;SPAN&gt;'&lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="https://community.esri.com/external-link.jspa?url=http%3A%2F%2Ftiledbasemaps.arcgis.com%2Farcgis%2Frest%2Fservices%2FWorld_Topo_Map%2FMapServer%2Fjobs%2F" target="_blank"&gt;http://tiledbasemaps.arcgis.com/arcgis/rest/services/World_Topo_Map/MapServer/jobs/&lt;/A&gt;&lt;SPAN&gt;' &lt;/SPAN&gt;&lt;/SPAN&gt;\
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + &lt;SPAN style="color: #000080;"&gt;str&lt;/SPAN&gt;(jobID) \
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + &lt;SPAN style="color: #008000; font-weight: bold;"&gt;'/results/out_service_url?f=json' &lt;/SPAN&gt;\
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #008000; font-weight: bold;"&gt;'&amp;amp;token=' &lt;/SPAN&gt;+ &lt;SPAN style="color: #000080;"&gt;str&lt;/SPAN&gt;(token[&lt;SPAN style="color: #008000; font-weight: bold;"&gt;'token'&lt;/SPAN&gt;])

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; result_resp = requests.get(res_url)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; result_resp_cont_dic = json.loads(result_resp.content)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; result_url = result_resp_cont_dic[&lt;SPAN style="color: #008000; font-weight: bold;"&gt;'value'&lt;/SPAN&gt;] + &lt;SPAN style="color: #008000; font-weight: bold;"&gt;'/Layers.tpk'
&lt;/SPAN&gt;&lt;SPAN style="color: #008000; font-weight: bold;"&gt;
&lt;/SPAN&gt;&lt;SPAN style="color: #008000; font-weight: bold;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;file_name = &lt;SPAN style="color: #008000; font-weight: bold;"&gt;'NH_TP_' &lt;/SPAN&gt;+ &lt;SPAN style="color: #000080;"&gt;str&lt;/SPAN&gt;(levels) + &lt;SPAN style="color: #008000; font-weight: bold;"&gt;'_' &lt;/SPAN&gt;+&amp;nbsp; &lt;SPAN style="color: #000080;"&gt;str&lt;/SPAN&gt;(row[&lt;SPAN style="color: #008000; font-weight: bold;"&gt;'ID'&lt;/SPAN&gt;]) + &lt;SPAN style="color: #008000; font-weight: bold;"&gt;'.tpk'
&lt;/SPAN&gt;&lt;SPAN style="color: #008000; font-weight: bold;"&gt;
&lt;/SPAN&gt;&lt;SPAN style="color: #008000; font-weight: bold;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;r = requests.get(result_url)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #000080; font-weight: bold;"&gt;with &lt;/SPAN&gt;&lt;SPAN style="color: #000080;"&gt;open&lt;/SPAN&gt;(file_name, &lt;SPAN style="color: #008000; font-weight: bold;"&gt;'wb'&lt;/SPAN&gt;) &lt;SPAN style="color: #000080; font-weight: bold;"&gt;as &lt;/SPAN&gt;f:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #000080; font-weight: bold;"&gt;for &lt;/SPAN&gt;chunk &lt;SPAN style="color: #000080; font-weight: bold;"&gt;in &lt;/SPAN&gt;r.iter_content(&lt;SPAN style="color: #660099;"&gt;chunk_size&lt;/SPAN&gt;=&lt;SPAN style="color: #0000ff;"&gt;1024&lt;/SPAN&gt;):
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #000080; font-weight: bold;"&gt;if &lt;/SPAN&gt;chunk:&amp;nbsp; &lt;SPAN style="color: #808080;"&gt;# filter out keep-alive new chunks
&lt;/SPAN&gt;&lt;SPAN style="color: #808080;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;f.write(chunk)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; f.flush() &lt;SPAN style="color: #808080;"&gt;#commented by recommendation from J.F.Sebastian
&lt;/SPAN&gt;&lt;SPAN style="color: #808080;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;f.close()


&lt;SPAN style="color: #000080; font-weight: bold;"&gt;if &lt;/SPAN&gt;__name__ == &lt;SPAN style="color: #008000; font-weight: bold;"&gt;"__main__"&lt;/SPAN&gt;:
&amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy.SignInToPortal_server(&lt;SPAN style="color: #008000; font-weight: bold;"&gt;"USERNAME"&lt;/SPAN&gt;, &lt;SPAN style="color: #008000; font-weight: bold;"&gt;"PASSWORD"&lt;/SPAN&gt;, &lt;SPAN style="color: #008000; font-weight: bold;"&gt;""&lt;/SPAN&gt;)
&amp;nbsp;&amp;nbsp;&amp;nbsp; token = arcpy.GetSigninToken()
&amp;nbsp;&amp;nbsp;&amp;nbsp; input_file = &lt;SPAN style="color: #008000; font-weight: bold;"&gt;"TPK_Grid_100.csv"
&lt;/SPAN&gt;&lt;SPAN style="color: #008000; font-weight: bold;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;num_levels = &lt;SPAN style="color: #0000ff;"&gt;17
&lt;/SPAN&gt;&lt;SPAN style="color: #0000ff;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #808080;"&gt;#print(token)
&lt;/SPAN&gt;&lt;SPAN style="color: #808080;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;scrape_tiles(token, input_file, num_levels)

&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Sat, 11 Dec 2021 13:28:23 GMT</pubDate>
    <dc:creator>Anonymous User</dc:creator>
    <dc:date>2021-12-11T13:28:23Z</dc:date>
    <item>
      <title>Problems using REST API to generate Tile Packages from World Topo (For Export)</title>
      <link>https://community.esri.com/t5/arcgis-rest-apis-and-services-questions/problems-using-rest-api-to-generate-tile-packages/m-p/276454#M1390</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Using the script below it seems that I can request the generation of tile packages and then download the resulting tpk file generated by ESRI. &amp;nbsp;But when I try and open the package&amp;nbsp;&lt;EM&gt;NOTHING&lt;/EM&gt; shows up in ArcMap. &amp;nbsp;Can't tell what is happening - can't tell what is going wrong. &amp;nbsp;Any ideas?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;
&lt;SPAN style="color: #000080; font-weight: bold;"&gt;import &lt;/SPAN&gt;arcpy
&lt;SPAN style="color: #000080; font-weight: bold;"&gt;import &lt;/SPAN&gt;requests
&lt;SPAN style="color: #000080; font-weight: bold;"&gt;import &lt;/SPAN&gt;pandas &lt;SPAN style="color: #000080; font-weight: bold;"&gt;as &lt;/SPAN&gt;pd
&lt;SPAN style="color: #000080; font-weight: bold;"&gt;import &lt;/SPAN&gt;time
&lt;SPAN style="color: #000080; font-weight: bold;"&gt;import &lt;/SPAN&gt;json



&lt;SPAN style="color: #000080; font-weight: bold;"&gt;def &lt;/SPAN&gt;scrape_tiles(token, input_file, levels):
&amp;nbsp;&amp;nbsp;&amp;nbsp; tpk_grid_df = pd.read_csv(input_file, &lt;SPAN style="color: #660099;"&gt;header&lt;/SPAN&gt;=&lt;SPAN style="color: #0000ff;"&gt;0&lt;/SPAN&gt;)

&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #000080; font-weight: bold;"&gt;for &lt;/SPAN&gt;index,row &lt;SPAN style="color: #000080; font-weight: bold;"&gt;in &lt;/SPAN&gt;tpk_grid_df.iterrows():

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; extent = &lt;SPAN style="color: #008000; font-weight: bold;"&gt;'{"xmin":' &lt;/SPAN&gt;+ &lt;SPAN style="color: #000080;"&gt;str&lt;/SPAN&gt;(row[&lt;SPAN style="color: #008000; font-weight: bold;"&gt;'XMIN'&lt;/SPAN&gt;]) + \
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #008000; font-weight: bold;"&gt;',"ymin":'&lt;/SPAN&gt;+&lt;SPAN style="color: #000080;"&gt;str&lt;/SPAN&gt;(row[&lt;SPAN style="color: #008000; font-weight: bold;"&gt;'YMIN'&lt;/SPAN&gt;]) + \
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #008000; font-weight: bold;"&gt;',"xmax":'&lt;/SPAN&gt;+&lt;SPAN style="color: #000080;"&gt;str&lt;/SPAN&gt;(row[&lt;SPAN style="color: #008000; font-weight: bold;"&gt;'XMAX'&lt;/SPAN&gt;]) + \
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #008000; font-weight: bold;"&gt;',"ymax":'&lt;/SPAN&gt;+&lt;SPAN style="color: #000080;"&gt;str&lt;/SPAN&gt;(row[&lt;SPAN style="color: #008000; font-weight: bold;"&gt;'YMAX'&lt;/SPAN&gt;]) + \
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #008000; font-weight: bold;"&gt;',"spatialReference" : {"wkid" : 4326}}'
&lt;/SPAN&gt;&lt;SPAN style="color: #008000; font-weight: bold;"&gt;
&lt;/SPAN&gt;&lt;SPAN style="color: #008000; font-weight: bold;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;req_url = &lt;SPAN style="color: #008000; font-weight: bold;"&gt;&lt;SPAN&gt;'&lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="https://community.esri.com/external-link.jspa?url=http%3A%2F%2Ftiledbasemaps.arcgis.com%2Farcgis%2Frest%2Fservices%2FWorld_Topo_Map%2FMapServer%2FexportTiles" target="_blank"&gt;http://tiledbasemaps.arcgis.com/arcgis/rest/services/World_Topo_Map/MapServer/exportTiles&lt;/A&gt;&lt;SPAN&gt;?' &lt;/SPAN&gt;&lt;/SPAN&gt;\
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #008000; font-weight: bold;"&gt;'tilePackage=true' &lt;/SPAN&gt;\
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #008000; font-weight: bold;"&gt;'&amp;amp;exportExtent=' &lt;/SPAN&gt;+ extent + \
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #008000; font-weight: bold;"&gt;'&amp;amp;optimizeTilesForSize=true' &lt;/SPAN&gt;\
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #008000; font-weight: bold;"&gt;'&amp;amp;compressionQuality=90' &lt;/SPAN&gt;\
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #008000; font-weight: bold;"&gt;'&amp;amp;exportBy=levelId' &lt;/SPAN&gt;\
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #008000; font-weight: bold;"&gt;'&amp;amp;levels=' &lt;/SPAN&gt;+ &lt;SPAN style="color: #000080;"&gt;str&lt;/SPAN&gt;(levels) + \
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #008000; font-weight: bold;"&gt;'&amp;amp;f=json' &lt;/SPAN&gt;\
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #008000; font-weight: bold;"&gt;'&amp;amp;token=' &lt;/SPAN&gt;+ &lt;SPAN style="color: #000080;"&gt;str&lt;/SPAN&gt;(token[&lt;SPAN style="color: #008000; font-weight: bold;"&gt;'token'&lt;/SPAN&gt;])

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; resp = requests.get(req_url)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; resp_cont_dic = json.loads(resp.content)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; jobID = resp_cont_dic[&lt;SPAN style="color: #008000; font-weight: bold;"&gt;'jobId'&lt;/SPAN&gt;]
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; jobStatus = resp_cont_dic[&lt;SPAN style="color: #008000; font-weight: bold;"&gt;'jobStatus'&lt;/SPAN&gt;]
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #000080; font-weight: bold;"&gt;print&lt;/SPAN&gt;(jobStatus)

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #000080; font-weight: bold;"&gt;while &lt;/SPAN&gt;jobStatus == &lt;SPAN style="color: #008000; font-weight: bold;"&gt;'esriJobSubmitted' &lt;/SPAN&gt;&lt;SPAN style="color: #000080; font-weight: bold;"&gt;or&amp;nbsp; &lt;/SPAN&gt;jobStatus == &lt;SPAN style="color: #008000; font-weight: bold;"&gt;'esriJobExecuting'&lt;/SPAN&gt;:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; time.sleep(&lt;SPAN style="color: #0000ff;"&gt;15&lt;/SPAN&gt;)

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; req_status_url = &lt;SPAN style="color: #008000; font-weight: bold;"&gt;&lt;SPAN&gt;'&lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="https://community.esri.com/external-link.jspa?url=http%3A%2F%2Ftiledbasemaps.arcgis.com%2Farcgis%2Frest%2Fservices%2FWorld_Topo_Map%2FMapServer%2Fjobs%2F" target="_blank"&gt;http://tiledbasemaps.arcgis.com/arcgis/rest/services/World_Topo_Map/MapServer/jobs/&lt;/A&gt;&lt;SPAN&gt;' &lt;/SPAN&gt;&lt;/SPAN&gt;\
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + &lt;SPAN style="color: #000080;"&gt;str&lt;/SPAN&gt;(jobID)\
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + &lt;SPAN style="color: #008000; font-weight: bold;"&gt;'?f=json' &lt;/SPAN&gt;\
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #008000; font-weight: bold;"&gt;'&amp;amp;token=' &lt;/SPAN&gt;+ &lt;SPAN style="color: #000080;"&gt;str&lt;/SPAN&gt;(token[&lt;SPAN style="color: #008000; font-weight: bold;"&gt;'token'&lt;/SPAN&gt;])

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; status_resp = requests.get(req_status_url)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; status_resp_cont = json.loads(status_resp.content)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; jobStatus = status_resp_cont[&lt;SPAN style="color: #008000; font-weight: bold;"&gt;'jobStatus'&lt;/SPAN&gt;]

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #000080; font-weight: bold;"&gt;if &lt;/SPAN&gt;jobStatus == &lt;SPAN style="color: #008000; font-weight: bold;"&gt;'esriJobFailed'&lt;/SPAN&gt;:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #000080; font-weight: bold;"&gt;print&lt;/SPAN&gt;(&lt;SPAN style="color: #008000; font-weight: bold;"&gt;'esriJobFailed'&lt;/SPAN&gt;)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #000080; font-weight: bold;"&gt;break
&lt;/SPAN&gt;&lt;SPAN style="color: #000080; font-weight: bold;"&gt;
&lt;/SPAN&gt;&lt;SPAN style="color: #000080; font-weight: bold;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #808080;"&gt;# GRABBING THE RESULTS
&lt;/SPAN&gt;&lt;SPAN style="color: #808080;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;res_url = &lt;SPAN style="color: #008000; font-weight: bold;"&gt;&lt;SPAN&gt;'&lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="https://community.esri.com/external-link.jspa?url=http%3A%2F%2Ftiledbasemaps.arcgis.com%2Farcgis%2Frest%2Fservices%2FWorld_Topo_Map%2FMapServer%2Fjobs%2F" target="_blank"&gt;http://tiledbasemaps.arcgis.com/arcgis/rest/services/World_Topo_Map/MapServer/jobs/&lt;/A&gt;&lt;SPAN&gt;' &lt;/SPAN&gt;&lt;/SPAN&gt;\
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + &lt;SPAN style="color: #000080;"&gt;str&lt;/SPAN&gt;(jobID) \
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + &lt;SPAN style="color: #008000; font-weight: bold;"&gt;'/results/out_service_url?f=json' &lt;/SPAN&gt;\
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #008000; font-weight: bold;"&gt;'&amp;amp;token=' &lt;/SPAN&gt;+ &lt;SPAN style="color: #000080;"&gt;str&lt;/SPAN&gt;(token[&lt;SPAN style="color: #008000; font-weight: bold;"&gt;'token'&lt;/SPAN&gt;])

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; result_resp = requests.get(res_url)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; result_resp_cont_dic = json.loads(result_resp.content)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; result_url = result_resp_cont_dic[&lt;SPAN style="color: #008000; font-weight: bold;"&gt;'value'&lt;/SPAN&gt;] + &lt;SPAN style="color: #008000; font-weight: bold;"&gt;'/Layers.tpk'
&lt;/SPAN&gt;&lt;SPAN style="color: #008000; font-weight: bold;"&gt;
&lt;/SPAN&gt;&lt;SPAN style="color: #008000; font-weight: bold;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;file_name = &lt;SPAN style="color: #008000; font-weight: bold;"&gt;'NH_TP_' &lt;/SPAN&gt;+ &lt;SPAN style="color: #000080;"&gt;str&lt;/SPAN&gt;(levels) + &lt;SPAN style="color: #008000; font-weight: bold;"&gt;'_' &lt;/SPAN&gt;+&amp;nbsp; &lt;SPAN style="color: #000080;"&gt;str&lt;/SPAN&gt;(row[&lt;SPAN style="color: #008000; font-weight: bold;"&gt;'ID'&lt;/SPAN&gt;]) + &lt;SPAN style="color: #008000; font-weight: bold;"&gt;'.tpk'
&lt;/SPAN&gt;&lt;SPAN style="color: #008000; font-weight: bold;"&gt;
&lt;/SPAN&gt;&lt;SPAN style="color: #008000; font-weight: bold;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;r = requests.get(result_url)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #000080; font-weight: bold;"&gt;with &lt;/SPAN&gt;&lt;SPAN style="color: #000080;"&gt;open&lt;/SPAN&gt;(file_name, &lt;SPAN style="color: #008000; font-weight: bold;"&gt;'wb'&lt;/SPAN&gt;) &lt;SPAN style="color: #000080; font-weight: bold;"&gt;as &lt;/SPAN&gt;f:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #000080; font-weight: bold;"&gt;for &lt;/SPAN&gt;chunk &lt;SPAN style="color: #000080; font-weight: bold;"&gt;in &lt;/SPAN&gt;r.iter_content(&lt;SPAN style="color: #660099;"&gt;chunk_size&lt;/SPAN&gt;=&lt;SPAN style="color: #0000ff;"&gt;1024&lt;/SPAN&gt;):
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #000080; font-weight: bold;"&gt;if &lt;/SPAN&gt;chunk:&amp;nbsp; &lt;SPAN style="color: #808080;"&gt;# filter out keep-alive new chunks
&lt;/SPAN&gt;&lt;SPAN style="color: #808080;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;f.write(chunk)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; f.flush() &lt;SPAN style="color: #808080;"&gt;#commented by recommendation from J.F.Sebastian
&lt;/SPAN&gt;&lt;SPAN style="color: #808080;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;f.close()


&lt;SPAN style="color: #000080; font-weight: bold;"&gt;if &lt;/SPAN&gt;__name__ == &lt;SPAN style="color: #008000; font-weight: bold;"&gt;"__main__"&lt;/SPAN&gt;:
&amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy.SignInToPortal_server(&lt;SPAN style="color: #008000; font-weight: bold;"&gt;"USERNAME"&lt;/SPAN&gt;, &lt;SPAN style="color: #008000; font-weight: bold;"&gt;"PASSWORD"&lt;/SPAN&gt;, &lt;SPAN style="color: #008000; font-weight: bold;"&gt;""&lt;/SPAN&gt;)
&amp;nbsp;&amp;nbsp;&amp;nbsp; token = arcpy.GetSigninToken()
&amp;nbsp;&amp;nbsp;&amp;nbsp; input_file = &lt;SPAN style="color: #008000; font-weight: bold;"&gt;"TPK_Grid_100.csv"
&lt;/SPAN&gt;&lt;SPAN style="color: #008000; font-weight: bold;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;num_levels = &lt;SPAN style="color: #0000ff;"&gt;17
&lt;/SPAN&gt;&lt;SPAN style="color: #0000ff;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #808080;"&gt;#print(token)
&lt;/SPAN&gt;&lt;SPAN style="color: #808080;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;scrape_tiles(token, input_file, num_levels)

&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 11 Dec 2021 13:28:23 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-rest-apis-and-services-questions/problems-using-rest-api-to-generate-tile-packages/m-p/276454#M1390</guid>
      <dc:creator>Anonymous User</dc:creator>
      <dc:date>2021-12-11T13:28:23Z</dc:date>
    </item>
    <item>
      <title>Re: Problems using REST API to generate Tile Packages from World Topo (For Export)</title>
      <link>https://community.esri.com/t5/arcgis-rest-apis-and-services-questions/problems-using-rest-api-to-generate-tile-packages/m-p/276455#M1391</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Fixed it using the code below:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;
&lt;SPAN style="color: #000080; font-weight: bold;"&gt;import &lt;/SPAN&gt;arcpy
&lt;SPAN style="color: #000080; font-weight: bold;"&gt;import &lt;/SPAN&gt;requests
&lt;SPAN style="color: #000080; font-weight: bold;"&gt;import &lt;/SPAN&gt;pandas &lt;SPAN style="color: #000080; font-weight: bold;"&gt;as &lt;/SPAN&gt;pd
&lt;SPAN style="color: #000080; font-weight: bold;"&gt;import &lt;/SPAN&gt;time
&lt;SPAN style="color: #000080; font-weight: bold;"&gt;import &lt;/SPAN&gt;json
&lt;SPAN style="color: #000080; font-weight: bold;"&gt;import &lt;/SPAN&gt;os.path

&lt;SPAN style="color: #000080; font-weight: bold;"&gt;global &lt;/SPAN&gt;skip_count

&lt;SPAN style="color: #000080; font-weight: bold;"&gt;def &lt;/SPAN&gt;gen_token():
&amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy.SignInToPortal_server(&lt;SPAN style="color: #008000; font-weight: bold;"&gt;"USERNAME"&lt;/SPAN&gt;, &lt;SPAN style="color: #008000; font-weight: bold;"&gt;"PASSWORD"&lt;/SPAN&gt;, &lt;SPAN style="color: #008000; font-weight: bold;"&gt;""&lt;/SPAN&gt;)
&amp;nbsp;&amp;nbsp;&amp;nbsp; token = arcpy.GetSigninToken()
&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #000080; font-weight: bold;"&gt;return &lt;/SPAN&gt;&lt;SPAN style="color: #000080;"&gt;str&lt;/SPAN&gt;(token[&lt;SPAN style="color: #008000; font-weight: bold;"&gt;'token'&lt;/SPAN&gt;])


&lt;SPAN style="color: #000080; font-weight: bold;"&gt;def &lt;/SPAN&gt;check_status(jobID, token):
&amp;nbsp;&amp;nbsp;&amp;nbsp; req_status_url = &lt;SPAN style="color: #008000; font-weight: bold;"&gt;&lt;SPAN&gt;'&lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="https://community.esri.com/external-link.jspa?url=http%3A%2F%2Ftiledbasemaps.arcgis.com%2Farcgis%2Frest%2Fservices%2FWorld_Topo_Map%2FMapServer%2Fjobs%2F" target="_blank"&gt;http://tiledbasemaps.arcgis.com/arcgis/rest/services/World_Topo_Map/MapServer/jobs/&lt;/A&gt;&lt;SPAN&gt;' &lt;/SPAN&gt;&lt;/SPAN&gt;\
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + jobID \
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + &lt;SPAN style="color: #008000; font-weight: bold;"&gt;'?f=json' &lt;/SPAN&gt;\
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #008000; font-weight: bold;"&gt;'&amp;amp;token=' &lt;/SPAN&gt;+ token

&amp;nbsp;&amp;nbsp;&amp;nbsp; status_resp = requests.get(req_status_url)
&amp;nbsp;&amp;nbsp;&amp;nbsp; status_resp_cont = json.loads(status_resp.content)
&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #000080; font-weight: bold;"&gt;return &lt;/SPAN&gt;&lt;SPAN style="color: #000080;"&gt;str&lt;/SPAN&gt;(status_resp_cont[&lt;SPAN style="color: #008000; font-weight: bold;"&gt;'jobStatus'&lt;/SPAN&gt;])


&lt;SPAN style="color: #000080; font-weight: bold;"&gt;def &lt;/SPAN&gt;scrape_tiles(input_file, levels):

&amp;nbsp;&amp;nbsp;&amp;nbsp; token = gen_token()

&amp;nbsp;&amp;nbsp;&amp;nbsp; tpk_grid_df = pd.read_csv(input_file, &lt;SPAN style="color: #660099;"&gt;header&lt;/SPAN&gt;=&lt;SPAN style="color: #0000ff;"&gt;0&lt;/SPAN&gt;)
&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #808080;"&gt;row_count &lt;/SPAN&gt;= &lt;SPAN style="color: #000080;"&gt;len&lt;/SPAN&gt;(tpk_grid_df)
&amp;nbsp;&amp;nbsp;&amp;nbsp; skip_count = &lt;SPAN style="color: #0000ff;"&gt;0
&lt;/SPAN&gt;&lt;SPAN style="color: #0000ff;"&gt;
&lt;/SPAN&gt;&lt;SPAN style="color: #0000ff;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #000080; font-weight: bold;"&gt;for &lt;/SPAN&gt;index,row &lt;SPAN style="color: #000080; font-weight: bold;"&gt;in &lt;/SPAN&gt;tpk_grid_df.iterrows():

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #000080; font-weight: bold;"&gt;try&lt;/SPAN&gt;:

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; file_name = &lt;SPAN style="color: #008000; font-weight: bold;"&gt;'NH_TP_' &lt;/SPAN&gt;+ &lt;SPAN style="color: #000080;"&gt;str&lt;/SPAN&gt;(levels) + &lt;SPAN style="color: #008000; font-weight: bold;"&gt;'_' &lt;/SPAN&gt;+ &lt;SPAN style="color: #000080;"&gt;str&lt;/SPAN&gt;(&lt;SPAN style="color: #000080;"&gt;int&lt;/SPAN&gt;(row[&lt;SPAN style="color: #008000; font-weight: bold;"&gt;'Grid_ID'&lt;/SPAN&gt;])) + &lt;SPAN style="color: #008000; font-weight: bold;"&gt;'.tpk'
&lt;/SPAN&gt;&lt;SPAN style="color: #008000; font-weight: bold;"&gt;
&lt;/SPAN&gt;&lt;SPAN style="color: #008000; font-weight: bold;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #000080; font-weight: bold;"&gt;if &lt;/SPAN&gt;os.path.isfile(file_name):
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; skip_count += &lt;SPAN style="color: #0000ff;"&gt;1
&lt;/SPAN&gt;&lt;SPAN style="color: #0000ff;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #000080; font-weight: bold;"&gt;continue
&lt;/SPAN&gt;&lt;SPAN style="color: #000080; font-weight: bold;"&gt;
&lt;/SPAN&gt;&lt;SPAN style="color: #000080; font-weight: bold;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;extent = &lt;SPAN style="color: #000080;"&gt;str&lt;/SPAN&gt;(row[&lt;SPAN style="color: #008000; font-weight: bold;"&gt;'XMIN'&lt;/SPAN&gt;]) + &lt;SPAN style="color: #008000; font-weight: bold;"&gt;',' &lt;/SPAN&gt;+ &lt;SPAN style="color: #000080;"&gt;str&lt;/SPAN&gt;(row[&lt;SPAN style="color: #008000; font-weight: bold;"&gt;'YMIN'&lt;/SPAN&gt;]) + &lt;SPAN style="color: #008000; font-weight: bold;"&gt;',' &lt;/SPAN&gt;+ &lt;SPAN style="color: #000080;"&gt;str&lt;/SPAN&gt;(row[&lt;SPAN style="color: #008000; font-weight: bold;"&gt;'XMAX'&lt;/SPAN&gt;]) + &lt;SPAN style="color: #008000; font-weight: bold;"&gt;',' &lt;/SPAN&gt;+ &lt;SPAN style="color: #000080;"&gt;str&lt;/SPAN&gt;(row[&lt;SPAN style="color: #008000; font-weight: bold;"&gt;'YMAX'&lt;/SPAN&gt;])

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #808080;"&gt;#extent = '{"xmin":' + str(row['XMIN']) + \
&lt;/SPAN&gt;&lt;SPAN style="color: #808080;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; #&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ',"ymin":'+str(row['YMIN']) + \
&lt;/SPAN&gt;&lt;SPAN style="color: #808080;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; #&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ',"xmax":'+str(row['XMAX']) + \
&lt;/SPAN&gt;&lt;SPAN style="color: #808080;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; #&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ',"ymax":'+str(row['YMAX']) + \
&lt;/SPAN&gt;&lt;SPAN style="color: #808080;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; #&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ',"spatialReference" : {"wkid" : 102100}}'
&lt;/SPAN&gt;&lt;SPAN style="color: #808080;"&gt;
&lt;/SPAN&gt;&lt;SPAN style="color: #808080;"&gt;
&lt;/SPAN&gt;&lt;SPAN style="color: #808080;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;req_url = &lt;SPAN style="color: #008000; font-weight: bold;"&gt;&lt;SPAN&gt;'&lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="https://community.esri.com/external-link.jspa?url=http%3A%2F%2Ftiledbasemaps.arcgis.com%2Farcgis%2Frest%2Fservices%2FWorld_Topo_Map%2FMapServer%2FexportTiles" target="_blank"&gt;http://tiledbasemaps.arcgis.com/arcgis/rest/services/World_Topo_Map/MapServer/exportTiles&lt;/A&gt;&lt;SPAN&gt;?' &lt;/SPAN&gt;&lt;/SPAN&gt;\
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #008000; font-weight: bold;"&gt;'tilePackage=true' &lt;/SPAN&gt;\
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #008000; font-weight: bold;"&gt;'&amp;amp;exportExtent=' &lt;/SPAN&gt;+ extent + \
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #008000; font-weight: bold;"&gt;'&amp;amp;optimizeTilesForSize=false' &lt;/SPAN&gt;\
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #008000; font-weight: bold;"&gt;'&amp;amp;compressionQuality=false' &lt;/SPAN&gt;\
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #008000; font-weight: bold;"&gt;'&amp;amp;exportBy=levelId' &lt;/SPAN&gt;\
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #008000; font-weight: bold;"&gt;'&amp;amp;levels=1-' &lt;/SPAN&gt;+ &lt;SPAN style="color: #000080;"&gt;str&lt;/SPAN&gt;(levels) + \
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #008000; font-weight: bold;"&gt;'&amp;amp;f=json' &lt;/SPAN&gt;\
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #008000; font-weight: bold;"&gt;'&amp;amp;token=' &lt;/SPAN&gt;+ token

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; resp = requests.get(req_url)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; resp_cont_dic = json.loads(resp.content)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; jobID = &lt;SPAN style="color: #000080;"&gt;str&lt;/SPAN&gt;(resp_cont_dic[&lt;SPAN style="color: #008000; font-weight: bold;"&gt;'jobId'&lt;/SPAN&gt;])
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; jobStatus = &lt;SPAN style="color: #000080;"&gt;str&lt;/SPAN&gt;(resp_cont_dic[&lt;SPAN style="color: #008000; font-weight: bold;"&gt;'jobStatus'&lt;/SPAN&gt;])
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #000080; font-weight: bold;"&gt;print&lt;/SPAN&gt;(jobStatus)

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #000080; font-weight: bold;"&gt;while &lt;/SPAN&gt;jobStatus == &lt;SPAN style="color: #008000; font-weight: bold;"&gt;'esriJobSubmitted' &lt;/SPAN&gt;&lt;SPAN style="color: #000080; font-weight: bold;"&gt;or &lt;/SPAN&gt;jobStatus == &lt;SPAN style="color: #008000; font-weight: bold;"&gt;'esriJobExecuting'&lt;/SPAN&gt;:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #000080; font-weight: bold;"&gt;print&lt;/SPAN&gt;(&lt;SPAN style="color: #008000; font-weight: bold;"&gt;'Job Processing: ' &lt;/SPAN&gt;+ &lt;SPAN style="color: #000080;"&gt;str&lt;/SPAN&gt;(&lt;SPAN style="color: #000080;"&gt;int&lt;/SPAN&gt;(row[&lt;SPAN style="color: #008000; font-weight: bold;"&gt;'Grid_ID'&lt;/SPAN&gt;])))
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; time.sleep(&lt;SPAN style="color: #0000ff;"&gt;5&lt;/SPAN&gt;)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; jobStatus = check_status(jobID, token)

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #000080; font-weight: bold;"&gt;if &lt;/SPAN&gt;jobStatus == &lt;SPAN style="color: #008000; font-weight: bold;"&gt;'esriJobFailed'&lt;/SPAN&gt;:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #000080; font-weight: bold;"&gt;print&lt;/SPAN&gt;(&lt;SPAN style="color: #008000; font-weight: bold;"&gt;'esriJobFailed: ' &lt;/SPAN&gt;+ &lt;SPAN style="color: #000080;"&gt;str&lt;/SPAN&gt;(&lt;SPAN style="color: #000080;"&gt;int&lt;/SPAN&gt;(row[&lt;SPAN style="color: #008000; font-weight: bold;"&gt;'Grid_ID'&lt;/SPAN&gt;])))
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #000080; font-weight: bold;"&gt;break
&lt;/SPAN&gt;&lt;SPAN style="color: #000080; font-weight: bold;"&gt;
&lt;/SPAN&gt;&lt;SPAN style="color: #000080; font-weight: bold;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #808080;"&gt;# GRABBING THE RESULTS
&lt;/SPAN&gt;&lt;SPAN style="color: #808080;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;res_url = &lt;SPAN style="color: #008000; font-weight: bold;"&gt;&lt;SPAN&gt;'&lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="https://community.esri.com/external-link.jspa?url=http%3A%2F%2Ftiledbasemaps.arcgis.com%2Farcgis%2Frest%2Fservices%2FWorld_Topo_Map%2FMapServer%2Fjobs%2F" target="_blank"&gt;http://tiledbasemaps.arcgis.com/arcgis/rest/services/World_Topo_Map/MapServer/jobs/&lt;/A&gt;&lt;SPAN&gt;' &lt;/SPAN&gt;&lt;/SPAN&gt;\
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + &lt;SPAN style="color: #000080;"&gt;str&lt;/SPAN&gt;(jobID) \
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + &lt;SPAN style="color: #008000; font-weight: bold;"&gt;'/results/out_service_url?f=json' &lt;/SPAN&gt;\
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #008000; font-weight: bold;"&gt;'&amp;amp;token=' &lt;/SPAN&gt;+ token

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; result_resp = requests.get(res_url)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; result_resp_cont_dic = json.loads(result_resp.content)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; result_url = result_resp_cont_dic[&lt;SPAN style="color: #008000; font-weight: bold;"&gt;'value'&lt;/SPAN&gt;] + &lt;SPAN style="color: #008000; font-weight: bold;"&gt;'/Layers.tpk'
&lt;/SPAN&gt;&lt;SPAN style="color: #008000; font-weight: bold;"&gt;
&lt;/SPAN&gt;&lt;SPAN style="color: #008000; font-weight: bold;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #000080; font-weight: bold;"&gt;print &lt;/SPAN&gt;(&lt;SPAN style="color: #008000; font-weight: bold;"&gt;"Downloading job: " &lt;/SPAN&gt;+ &lt;SPAN style="color: #000080;"&gt;str&lt;/SPAN&gt;(&lt;SPAN style="color: #000080;"&gt;int&lt;/SPAN&gt;(row[&lt;SPAN style="color: #008000; font-weight: bold;"&gt;'Grid_ID'&lt;/SPAN&gt;])))
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; r = requests.get(result_url)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #000080; font-weight: bold;"&gt;with &lt;/SPAN&gt;&lt;SPAN style="color: #000080;"&gt;open&lt;/SPAN&gt;(file_name, &lt;SPAN style="color: #008000; font-weight: bold;"&gt;'wb'&lt;/SPAN&gt;) &lt;SPAN style="color: #000080; font-weight: bold;"&gt;as &lt;/SPAN&gt;f:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #000080; font-weight: bold;"&gt;for &lt;/SPAN&gt;chunk &lt;SPAN style="color: #000080; font-weight: bold;"&gt;in &lt;/SPAN&gt;r.iter_content(&lt;SPAN style="color: #660099;"&gt;chunk_size&lt;/SPAN&gt;=&lt;SPAN style="color: #0000ff;"&gt;1024&lt;/SPAN&gt;):
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #000080; font-weight: bold;"&gt;if &lt;/SPAN&gt;chunk:&amp;nbsp; &lt;SPAN style="color: #808080;"&gt;# filter out keep-alive new chunks
&lt;/SPAN&gt;&lt;SPAN style="color: #808080;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;f.write(chunk)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; f.flush() &lt;SPAN style="color: #808080;"&gt;#commented by recommendation from J.F.Sebastian
&lt;/SPAN&gt;&lt;SPAN style="color: #808080;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;f.close()


&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #000080; font-weight: bold;"&gt;except&lt;/SPAN&gt;:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #000080; font-weight: bold;"&gt;print&lt;/SPAN&gt;(&lt;SPAN style="color: #008000; font-weight: bold;"&gt;'Error with job: ' &lt;/SPAN&gt;+ &lt;SPAN style="color: #000080;"&gt;str&lt;/SPAN&gt;(&lt;SPAN style="color: #000080;"&gt;int&lt;/SPAN&gt;(row[&lt;SPAN style="color: #008000; font-weight: bold;"&gt;'Grid_ID'&lt;/SPAN&gt;])))
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #000080; font-weight: bold;"&gt;continue
&lt;/SPAN&gt;&lt;SPAN style="color: #000080; font-weight: bold;"&gt;
&lt;/SPAN&gt;&lt;SPAN style="color: #000080; font-weight: bold;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; return &lt;/SPAN&gt;skip_count




&lt;SPAN style="color: #000080; font-weight: bold;"&gt;if &lt;/SPAN&gt;__name__ == &lt;SPAN style="color: #008000; font-weight: bold;"&gt;"__main__"&lt;/SPAN&gt;:

&amp;nbsp;&amp;nbsp;&amp;nbsp; input_file = &lt;SPAN style="color: #008000; font-weight: bold;"&gt;"TPK_Grid.csv"
&lt;/SPAN&gt;&lt;SPAN style="color: #008000; font-weight: bold;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;num_levels = &lt;SPAN style="color: #0000ff;"&gt;17
&lt;/SPAN&gt;&lt;SPAN style="color: #0000ff;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;tile_count = &lt;SPAN style="color: #0000ff;"&gt;71
&lt;/SPAN&gt;&lt;SPAN style="color: #0000ff;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;skip_count = &lt;SPAN style="color: #0000ff;"&gt;0
&lt;/SPAN&gt;&lt;SPAN style="color: #0000ff;"&gt;
&lt;/SPAN&gt;&lt;SPAN style="color: #0000ff;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #000080; font-weight: bold;"&gt;while&lt;/SPAN&gt;(skip_count &amp;lt; tile_count):
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="color: #000080; font-weight: bold;"&gt;print&lt;/SPAN&gt;(&lt;SPAN style="color: #008000; font-weight: bold;"&gt;'skip_count: ' &lt;/SPAN&gt;+&lt;SPAN style="color: #000080;"&gt;str&lt;/SPAN&gt;(skip_count))
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; skip_count = scrape_tiles(input_file, num_levels)

&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 11 Dec 2021 13:28:26 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-rest-apis-and-services-questions/problems-using-rest-api-to-generate-tile-packages/m-p/276455#M1391</guid>
      <dc:creator>Anonymous User</dc:creator>
      <dc:date>2021-12-11T13:28:26Z</dc:date>
    </item>
  </channel>
</rss>

