Пакетный импорт данных (Intelligence)

Сводка

Импортирует папки с файлами KML, KMZ, шейп-файлами, таблицами Excel, текстовыми файлами с разделителями, GeoJSON, и GPX в классы объектов базы геоданных.

Использование

  • Во Входных данных будет, по умолчанию, выполняться рекурсивный поиск файлов KML (.kml), KMZ (.kmz), шейп-файлов (.shp), рабочих книг Excel (.xlsx и .xls), текстовых файлов с разделителями (.csv, .txt и .tab), файлов GeoJSON (.geojson) и файлов GPX (.gpx). Для ограничения импорта файлов можно использовать параметр Фильтр.

  • Растры, или покрытие снимками, в файлах KML и KMZ конвертируется в набор данных мозаики в Целевой базе геоданных. Исходные растры, на которые ссылается набор данных мозаики, сохраняются в исходном формате в подпапке, названной в соответствии с именем набора данных мозаики. Она расположена в том же каталоге, что и целевая база геоданных. Эти файлы называются именем Целевой базы геоданных с суффиксом _Rasters. Например, если ваша Целевая база геоданных - C:\Data\OperationalData.gdb, будет создана папка OperationalData_Rasters в каталоге C:\Data.

  • Если вы импортируете файлы в многопользовательскую базу геоданных, убедитесь, что задан файл подключения (.sde), как путь UNC в параметре Целевая база геоданных, и путь доступен для многопользовательской базы геоданных.

  • Обычно поддерживаются входные данные в KML and KMZ до версии KMZ 2.2 стандарта OGC KML. Положения точек, использующие тег адреса (путем геокодирования), не поддерживаются. В исходном KML требуется наличие допустимого положения, выраженного в виде широты и долготы.

  • Стандартным разделителем для табличных текстовых файлов с расширениями .csv и .txt является запятая, а для файлов с расширением .tab - табуляция. Чтобы работать с таблицей с нестандартным разделителем, этот разделитель нужно задать в файле schema.ini. См. файл Schema.ini (драйвер для текстовых файлов) документации Microsoft для получения подробной информации.

  • Для входных листов Excel и табличных текстовых файлов поддерживается только точечная геометрия.

  • Спецификацией GeoJSON поддерживается несколько типов геометрии. Для каждого типа геометрии входного файла GeoJSON создается отдельный класс объектов - с применением правил наименования SourceGeoJSONFile_GeometryType. Например, если файл GeoJSON называется World Airports.geojson и содержит точечную, мультиточечную, полилинейную и полигональную геометрию, классы пространственных объектов будут называться World Airports_Points, World Airports_Multipoint, World Airports_Polylines и World Airports_Polygons.

  • При запуске этого инструмента учитывайте следующие соображения, касающиеся систем координат:

    • Для шейп-файлов, KML, KMZ, GeoJSON и GPX система координат выходного набора данных будет такой же, как и у входного набора. Спецификации KML и GPX требуют, чтобы система координат входного набора данных была GCS WGS1984.
    • Для рабочих книг Excel и табличных текстовых файлов предполагается, что система координат входных данных - GCS WGS1984, а значения долготы и широты указаны в десятичных градусах.

  • Если любые из входных координат (долгота или широта) для объекта некорректны (null или нечисловые значения), этот объект получит нулевую геометрию. Можно использовать инструмент Проверить геометрию, чтобы проверить наличие нулевой геометрии в выходных данных.

  • В текстовых файлах с разделителями (.csv, .txt и .tab), а также листах Excel должна быть колонка с долготой и широтой. Допускаются столбцы longitude, long, lon, x_coordinate, x_coord и x. Допускаются столбцы latitude, lat, y_coordinate, y_coord и y. Если в источнике есть несколько подходящих столбцов долготы и широты, будет использоваться первый подходящий столбец.

  • Импортируются все листы рабочей книги Excel.

  • Символы применяются к выходным слоям, добавляемым на карту, основываясь на символах в файлах исходных данных, следующим образом:

    Примечание:
    Активная карта должна присутствовать в проекте ArcGIS Pro в момент выполнения, чтобы символы сохранились. Если инструмент запускается вне проекта ArcGIS Pro - например, из автономного скрипта Python - символы сохраняться не будут.
    • Для выходных слоев, созданных из файлов KML или KMZ, символы извлекаются из исходного файла KML или KMZ и применяются к выходным слоям. Эти символы можно заместить, указав файл слоя (.lyrx или .lyr), находящийся в той же папке, что и исходный файл KML или KMZ. У файла слоя должно быть то же базовое имя, что и у исходного файла данных, с добавлением подчеркивания (_) и типа геометрии (points, polylines или polygons) слоя, который необходимо переопределить. К примеру, если файл KML назван World Airports.kml и содержит точечные, линейные и полигональные объекты, а вы хотите переопределить символы для всех типов геометрии, файлы слоя должны называться World Airports_Points.lyrx, World Airports_Polylines.lyrx и World Airports_Polygons.lyrx. Значения типов геометрии чувствительны к регистру. Если файл слоя не существует для данного типа геометрии, символы из исходного файла KML или KMZ применяются к выходному слою.
    • Для выходных слоев, созданных из источников, отличных от KML и KMZ, символы применяются к выходному слою, если файл слоя (.lyrx или .lyr) содержится в той же папке, что и исходный файл данных. У файла слоя должно быть такое же базовое имя, как у исходного файла данных, за исключением листов Excel и файлов GeoJSON. Для листов Excel у файла слоя должно быть то же имя, что и базовое имя исходного файла данных, с добавлением подчеркивания (_) и имени листа. Например, если у файла Excel имя World.xlsx и в нем содержится лист Cities (2018), файл слоя должен называться World_Cities (2018).lyrx или World_Cities (2018).lyr. Для файлов GeoJSON у файла слоя должно быть то же имя, что и базовое имя файла исходных данных, с добавлением подчеркивания (_) и типа выходной геометрии - points, multipoint, polylines и polygons). Если файл слоя не существует, к выходному слою будет применен символ по умолчанию.

Синтаксис

arcpy.intelligence.BatchImportData(in_data, target_gdb, {filter}, {include_sub_folders}, {include_groundoverlay})
ParameterОбъяснениеТип данных
in_data
[in_data,...]

Каталоги, содержащие файлы данных для преобразования в классы пространственных объектов базы геоданных.

Folder
target_gdb

Целевая база геоданных, в которой будут сохранены выходные классы пространственных объектов.

Workspace
filter
(Дополнительный)

Фильтр данных, добавляемых в базу геоданных. Символы звездочки, применяемые для фильтрации, работают в полном пути ко входным данным, перечислены ниже.

  • * - Соответствует любым символам
  • ? - Соответствует одному символу
  • [ диапазон ] - соответствует одному символу из диапазона
  • [! диапазон ] - соответствует любому символу, не входящему в диапазон
В фильтр можно добавить несколько образцов, если разделить вертикальными черточками (|). При этом до и после разделителя не должно быть пробелов. При сравнении с образцами не учитывается регистр, поэтому при использовании образцов *airport.shp, *AIRPORT.SHP и *Airport.shp будет импортирован один и тот же шейп-файл.

Ниже приведены примеры фильтров:

  • Для импорта всех шейп-файлов введите *.shp.
  • Для импорта всех шейп-файлов и всех файлов KML введите *.shp|*.kml.
  • Для импорта всех файлов, путь или имя которых содержит строку airport, введите *airport*.
  • Для импорта всех файлов GeoJSON, путь или имя которых содержит строку airport, введите *airport*.geojson.
  • Чтобы импортировать все файлы KMZ, в именах которых за строкой airport следуют два любых символа, введите *airport??.kmz.
  • Для импорта всех файлов, путь или имя которых содержит число в диапазоне от 1990 до 1997, введите *199[0 -7].
  • Для импорта всех шейп-файлов, путь к которым содержит папку airfacilities, введите *\airfacilities\*.shp.

String
include_sub_folders
(Дополнительный)

Задает рекурсивный поиск данных во вложенных папках.

  • SUBFOLDERSБудут исследоваться все подпапки. Это настройка, используемая по умолчанию.
  • NO_SUBFOLDERSБудет исследоваться только папка верхнего уровня.
Boolean
include_groundoverlay
(Дополнительный)

Определяет, будут ли в выходные данные включаться наложения земли KML или KMZ (растр, аэрофотоснимки и т.д.)

Используйте с осторожностью, если KMZ ссылается на сервис, предоставляющий растровые изображения. Инструмент попытается преобразовать растровые изображения во всех доступных масштабах. Этот процесс может занять длительное время и привести к нагрузкам на сервис.

  • GROUNDOVERLAYНаложения земли включаются в выходные данные. Это значение по умолчанию.
  • NO_GROUNDOVERLAYНаложения земли не включаются в выходные данные.
Boolean

Производные выходные данные

NameОбъяснениеТип данных
out_geodatabase

Обновленная целевая база геоданных.

Рабочая область

Пример кода

BatchImportData, пример 1 (окно Python)

Окно Python скрипта с примером использования функции BatchImportData в режиме прямого запуска:

import arcpy 
arcpy.BatchImportData_intelligence("c:/data/sourcedata", "c:/data/output.gdb", "", "SUBFOLDERS", "NO_GROUNDOVERLAY")
BatchImportData, пример 2 (автономный скрипт)

В следующем скрипте Python показано, как используется функцию BatchImportData в автономном скрипте:

# Name: BatchImportData_Example2.py
# Description: Imports all shapefiles with 'airport' in the file name or file
#              path within a directory to feature classes in a single geodatabase.
# Requirements: Standard or Advanced license
# Import system modules
import arcpy
# Set local variables
in_data = ["c:/data/sourcedata"]
target_gdb = r"\\data\operationaldata.sde" 
filter = "*airports*.shp" 
include_sub_folders = "NO_SUBFOLDERS" 
# Execute BatchImportData
arcpy.BatchImportData_intelligence(in_data, target_gdb, filter, include_sub_folders)

Environments

Этот инструмент не использует параметры среды геообработки

Информация о лицензиях

  • Basic: Нет
  • Standard: Да
  • Advanced: Да

Связанные разделы