<?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 Re: Export pop-up info with attachment from geodatabase in Python Questions</title>
    <link>https://community.esri.com/t5/python-questions/export-pop-up-info-with-attachment-from/m-p/35112#M2749</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Crystal,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;That's exactly the sort of issue I am looking into.&amp;nbsp; Have you had any luck yet?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Greg&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 24 Jan 2019 15:36:29 GMT</pubDate>
    <dc:creator>GregRouse</dc:creator>
    <dc:date>2019-01-24T15:36:29Z</dc:date>
    <item>
      <title>Export pop-up info with attachment from geodatabase</title>
      <link>https://community.esri.com/t5/python-questions/export-pop-up-info-with-attachment-from/m-p/35110#M2747</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello. We have been provided a geodatabase containing a point feature class and related attachments and tables. I have successfully exported the attached images from the geodatabase with the specified naming scheme. However, the question came up about whether it is possible to export attachments from the geodatabase, but this time INCLUDE the pop-up info (i.e., attribute data) in the "properties" of the image file. As an example, say an image of manhole 1_WW currently shows the xy location of the point, but it does not include any of the information that was added to the point feature class such as type, diameter, depth, etc, all of which are in the attribute table of the point. &lt;/P&gt;&lt;P&gt;I appreciate your help. Thank you.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Here is the script I used:&lt;/P&gt;&lt;P&gt;import arcpy&lt;BR /&gt;from arcpy import da&lt;BR /&gt;import os&lt;/P&gt;&lt;P&gt;inTable = arcpy.GetParameterAsText(0)&lt;BR /&gt;fileLocation = arcpy.GetParameterAsText(1)&lt;/P&gt;&lt;P&gt;with da.SearchCursor(inTable, ['DATA', 'ATT_NAME', 'REL_GLOBALID']) as cursor:&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; for item in cursor:&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; attachment = item[0]&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; filenum = "ATT" + str(item[2]) + "_"&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; filename = filenum + str(item[1])&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; open(fileLocation + os.sep + filename, 'wb').write(attachment.tobytes())&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 23 Jan 2019 23:17:37 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/export-pop-up-info-with-attachment-from/m-p/35110#M2747</guid>
      <dc:creator>CrystalSchiffbauer-Bowles1</dc:creator>
      <dc:date>2019-01-23T23:17:37Z</dc:date>
    </item>
    <item>
      <title>Re: Export pop-up info with attachment from geodatabase</title>
      <link>https://community.esri.com/t5/python-questions/export-pop-up-info-with-attachment-from/m-p/35111#M2748</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;When you say 'in the "properties" of the image file', do you mean something like saving data in the exif of a jpg, or saving a text file that would have the same name as the image file?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;An old thread &lt;A _jive_internal="true" href="https://community.esri.com/thread/222027-query-a-related-table-and-export-it-with-joined-feature-attributes"&gt;Query a related table and export it with joined feature attributes?&lt;/A&gt;&amp;nbsp;might give you some ideas if you want to write data to a similarly named text file.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 24 Jan 2019 01:05:54 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/export-pop-up-info-with-attachment-from/m-p/35111#M2748</guid>
      <dc:creator>RandyBurton</dc:creator>
      <dc:date>2019-01-24T01:05:54Z</dc:date>
    </item>
    <item>
      <title>Re: Export pop-up info with attachment from geodatabase</title>
      <link>https://community.esri.com/t5/python-questions/export-pop-up-info-with-attachment-from/m-p/35112#M2749</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Crystal,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;That's exactly the sort of issue I am looking into.&amp;nbsp; Have you had any luck yet?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Greg&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 24 Jan 2019 15:36:29 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/export-pop-up-info-with-attachment-from/m-p/35112#M2749</guid>
      <dc:creator>GregRouse</dc:creator>
      <dc:date>2019-01-24T15:36:29Z</dc:date>
    </item>
    <item>
      <title>Re: Export pop-up info with attachment from geodatabase</title>
      <link>https://community.esri.com/t5/python-questions/export-pop-up-info-with-attachment-from/m-p/35113#M2750</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello Randy. Thank you for the response. I am looking to save the attribute data to the exif of the jpeg. I understand that information stored with the image and in the exif is drone collected, but would like to be able to use the related feature class attributes to write in field collected point data to the exif. My test file is a one-to-one relate; but others are one-to-many. I have joined the feature class to the Attachment table but am unable to get beyond this point because you can't export the attach table to a new one and maintain the attachments. I appreciate your help.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I hope that makes sense...I feel like I am making circular statements...&amp;nbsp;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 24 Jan 2019 23:38:32 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/export-pop-up-info-with-attachment-from/m-p/35113#M2750</guid>
      <dc:creator>CrystalSchiffbauer-Bowles1</dc:creator>
      <dc:date>2019-01-24T23:38:32Z</dc:date>
    </item>
    <item>
      <title>Re: Export pop-up info with attachment from geodatabase</title>
      <link>https://community.esri.com/t5/python-questions/export-pop-up-info-with-attachment-from/m-p/35114#M2751</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;The additional explanation helps - one feature to one or more photos.&amp;nbsp;I've dabbled a little with exif data.&amp;nbsp; My August 24/25 comments in&amp;nbsp;&lt;A _jive_internal="true" href="https://community.esri.com/thread/220268-foto-hernoemen-naar-datum-waarop-de-foto-is-gemaakt-exif" target="_blank"&gt;this thread&lt;/A&gt; might be of help.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;You could read the feature attributes into a dictionary using the globalID as the key with a search cursor.&amp;nbsp; Then work through your&amp;nbsp;related table to get the attached photos with the related globalID to access the dictionary's saved attributes.&amp;nbsp; Then save the image with new exif data.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;UPDATE:&amp;nbsp; Here's some sample code that links the parent data with the related image data:&lt;/P&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;&lt;CODE&gt;&lt;SPAN class="keyword token"&gt;import&lt;/SPAN&gt; arcpy&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; os

masterFC &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; r&lt;SPAN class="string token"&gt;'C:\Path\to\file.gdb\feature'&lt;/SPAN&gt;
masterFlds &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;'GlobalID'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;'SHAPE@XY'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;'OBJECTID'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;'Field1'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;'Field2'&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt; &lt;SPAN class="comment token"&gt;# [ 'GlobalID', and fields you want... ]&lt;/SPAN&gt;

relatedTbl &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; r&lt;SPAN class="string token"&gt;'C:\Path\to\file.gdb\feature'&lt;/SPAN&gt;__ATTACH'
relatedFlds &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;&lt;SPAN class="string token"&gt;'REL_GLOBALID'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;'ATTACHMENTID'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;'DATA'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;'CONTENT_TYPE'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;

&lt;SPAN class="comment token"&gt;# Use list comprehension to build a dictionary from a da SearchCursor&lt;/SPAN&gt;
masterDict &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;r&lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;0&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;r&lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;1&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt; &lt;SPAN class="keyword token"&gt;for&lt;/SPAN&gt; r &lt;SPAN class="keyword token"&gt;in&lt;/SPAN&gt; arcpy&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;da&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;SearchCursor&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;masterFC&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; masterFlds&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;# print masterDict&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;# looks something like { '{6656FDEC-6BD8CF4E16AF}': ((-14962237.7272, 8031520.472999997), 421, 'attribute', ... ), ... }&lt;/SPAN&gt;

sr &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; arcpy&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;Describe&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;masterFC&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;spatialReference &lt;SPAN class="comment token"&gt;# get spatial reference of parent feature, if desired&lt;/SPAN&gt;
&lt;SPAN class="keyword token"&gt;print&lt;/SPAN&gt; sr&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;factoryCode

&lt;SPAN class="keyword token"&gt;with&lt;/SPAN&gt; arcpy&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;da&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;SearchCursor&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;relatedTbl&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; relatedFlds&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt; &lt;SPAN class="keyword token"&gt;as&lt;/SPAN&gt; cursor&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt;
    &lt;SPAN class="keyword token"&gt;for&lt;/SPAN&gt; item &lt;SPAN class="keyword token"&gt;in&lt;/SPAN&gt; cursor&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt;
        &lt;SPAN class="comment token"&gt;# item[3] is Content Type&lt;/SPAN&gt;
        &lt;SPAN class="keyword token"&gt;if&lt;/SPAN&gt; item&lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;3&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt; &lt;SPAN class="operator token"&gt;==&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;'image/jpeg'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt; &lt;SPAN class="comment token"&gt;# process only images; where clause can also be used to limit results&lt;/SPAN&gt;

            &lt;SPAN class="comment token"&gt;# item[0] is related GlobalID; use it as key to masterDict and access tuple with indexing&lt;/SPAN&gt;
            x&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt;y &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; masterDict&lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;item&lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;0&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;0&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt; &lt;SPAN class="comment token"&gt;# use [0] to access SHAPE@XY&lt;/SPAN&gt;
            &lt;SPAN class="keyword token"&gt;print&lt;/SPAN&gt; x&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; y
            &lt;SPAN class="comment token"&gt;# get Longitude/Latitude&lt;/SPAN&gt;
            ptGeometry &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; arcpy&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;PointGeometry&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;arcpy&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;Point&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;x&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt;y&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt;arcpy&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;SpatialReference&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;sr&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;factoryCode&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;projectAs&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;arcpy&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;SpatialReference&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;4326&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
            lon&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; lat &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; ptGeometry&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;firstPoint&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;X&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; ptGeometry&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;firstPoint&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;Y  

            parentOID &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; masterDict&lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;item&lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;0&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;1&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt; &lt;SPAN class="comment token"&gt;# use [1] to access parent ObjectID&lt;/SPAN&gt;
            attribute1 &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; masterDict&lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;item&lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;0&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;2&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt; &lt;SPAN class="comment token"&gt;# use [2], [3], etc. to access parent feature's attributes&lt;/SPAN&gt;
            attribute2 &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; masterDict&lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;item&lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;0&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;3&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt; &lt;SPAN class="comment token"&gt;# use [2], [3], etc. to access parent feature's attributes&lt;/SPAN&gt;

            attID &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; item&lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;1&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt; &lt;SPAN class="comment token"&gt;# this is the Attachment ID in related table&lt;/SPAN&gt;
            &lt;SPAN class="comment token"&gt;# make new filename for image&lt;/SPAN&gt;

            filename &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;"ATT_{}_{}.jpg"&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;format&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;parentOID&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; attID&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
            &lt;SPAN class="keyword token"&gt;print&lt;/SPAN&gt; filename
            &lt;SPAN class="keyword token"&gt;print&lt;/SPAN&gt; lon&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; lat&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; parentOID&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; attribute1&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; attribute2
            &lt;SPAN class="comment token"&gt;# do your exif stuff here&lt;/SPAN&gt;
            &lt;SPAN class="comment token"&gt;# save the image to the desired location&lt;/SPAN&gt;
            &lt;SPAN class="comment token"&gt;# saveName = os.path.join(saveLocation, fileName)&lt;/SPAN&gt;
            &lt;SPAN class="comment token"&gt;# f = open(saveName, 'wb').write(item[2].tobytes())&lt;/SPAN&gt;

&lt;SPAN class="keyword token"&gt;del&lt;/SPAN&gt;  cursor
&lt;SPAN class="keyword token"&gt;del&lt;/SPAN&gt; item&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;Code still needs the exif stuff.&amp;nbsp; Hope this helps.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 10 Dec 2021 21:22:12 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/export-pop-up-info-with-attachment-from/m-p/35114#M2751</guid>
      <dc:creator>RandyBurton</dc:creator>
      <dc:date>2021-12-10T21:22:12Z</dc:date>
    </item>
    <item>
      <title>Re: Export pop-up info with attachment from geodatabase</title>
      <link>https://community.esri.com/t5/python-questions/export-pop-up-info-with-attachment-from/m-p/35115#M2752</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;It looks like you have the image extraction down using&amp;nbsp;&lt;A class="link-titled" href="https://support.esri.com/en/technical-article/000011912" title="https://support.esri.com/en/technical-article/000011912"&gt;How To: Batch export attachments from a feature class in ArcMap&lt;/A&gt;.&amp;nbsp;&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;You need to modify your cursor to include the other attribute data you would like to include in the image metadata&lt;/LI&gt;&lt;LI&gt;You then need to write this information as metadata to each image file using an additional Python module such as &lt;A class="link-titled" href="https://pypi.org/project/piexif/" title="https://pypi.org/project/piexif/"&gt;piexif · PyPI&lt;/A&gt;&amp;nbsp; or&amp;nbsp;&lt;A class="link-titled" href="https://pypi.org/project/py3exiv2/" title="https://pypi.org/project/py3exiv2/"&gt;py3exiv2 · PyPI&lt;/A&gt;&amp;nbsp;depending which version of Python you are running.&amp;nbsp; There are only a limited number of valid EXIF tags so you may need to concatenate the data into a JASON string and save it to the UserComment tag.&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Example of using pyexif to write JASON data:&amp;nbsp;&lt;A class="link-titled" href="https://stackoverflow.com/questions/8586940/writing-complex-custom-metadata-on-images-through-python" title="https://stackoverflow.com/questions/8586940/writing-complex-custom-metadata-on-images-through-python"&gt;Writing complex custom metadata on images through python - Stack Overflow&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 25 Jan 2019 01:41:23 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/export-pop-up-info-with-attachment-from/m-p/35115#M2752</guid>
      <dc:creator>LanceCole</dc:creator>
      <dc:date>2019-01-25T01:41:23Z</dc:date>
    </item>
  </channel>
</rss>

