Be The First To Get Support Updates
Want to know about the latest technical content and software updates?
操作方法:从 ArcGIS Pro 的要素类中批量导出附件
摘要
ArcGIS Pro 可以通过将附加文件保存到文件系统来导出要素类中的附件,如以下文档所述:保存附件的文件。 但是,此功能仅限于一次保存一个要素的附件。 没有地理处理工具允许用户在一个进程中导出或保存所有要素附加的所有附件。
提供的说明描述了如何通过创建脚本工具从要素类批量导出附件,以便完成任务。
过程
要在 ArcGIS Pro 中从要素类批量导出附件,请从 Python 脚本创建脚本工具,允许使用下方提供的工作流从要素类中批量导出附件,并提供工具所需的参数来运行创建的脚本工具。
注: 用于导出附件的脚本要求输入表为在要素类上启用附件时创建的标准附件表。 这是因为脚本依赖于此表中存储的 DATA、ATT_NAME 和 ATTACHMENTID 字段。 附件表的典型命名约定必须将 _ATTACH 追加至表名的末尾。
- 将以下脚本复制并粘贴到记事本中,并将其另存为ExportAttachments.py。
注: 以下脚本会遍历单个要素类的整个附件表,并将所有附件(保存为 BLOB 或二进制大对象)复制到文件。
import arcpy from arcpy import da import os inTable = arcpy.GetParameterAsText(0) fileLocation = arcpy.GetParameterAsText(1) with da.SearchCursor(inTable, ['DATA', 'ATT_NAME', 'ATTACHMENTID']) as cursor: for item in cursor: attachment = item[0] filenum = "ATT" + str(item[2]) + "_" filename = filenum + str(item[1]) open(fileLocation + os.sep + filename, 'wb').write(attachment.tobytes()) del item del filenum del filename del attachment
- 在 ArcGIS Pro 中,右键单击目录窗格中的工具箱,然后单击新建 > 脚本
- 在脚本工具属性页面中设置脚本工具的属性,如下所示。
- 在常规部分,为脚本工具输入名称和标注。 例如,输入 ExportAttachments 作为名称,Export Attachments 作为标注。 标注是脚本工具的显示名称,如地理处理窗格中所示。
- 单击脚本文件字段旁的浏览 图标
,并导航至步骤 1 中保存的脚本文件的位置,选择脚本,单击确定。
- 选中带有相对路径的存储工具复选框。
- 在参数部分中,在标注列的第一排输入 Attachments Table,并将数据类型设置为表。 这是脚本工具的第一个参数。 此参数定义包含要导出的附件的表。
- 在第二行中,添加第二个参数,将 Output Location 作为标注名称,并将数据类型设置为文件夹。 此参数定义放置导出附件的文件夹。
- 单击确定。 新的脚本工具随即添加到工具箱中。
- 双击创建的脚本工具以打开该工具。 如下所示设置工具的参数以批量导出附件。
- 在工具对话框中浏览附件表,其中包含要在附件表参数中导出的附件。
- 在输出位置参数中,选择用于保存已导出附件的文件夹,然后单击确定。
- 单击运行。
随即成功将附件批量导出到输出位置参数中定义的文件夹中。
相关信息
上次修改时间: 7/27/2022
文章 ID: 000017450
软件: ArcGIS Pro 3.0, 2.9.3, 2.9.2, 2.9.1, 2.9, 2.8.7, 2.8.6, 2.8.5, 2.8.4, 2.8.3, 2.8.2, 2.8.1, 2.8