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

Краткая информация

Импортирует файлы 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.

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

  • Поддерживаемые координаты для табличных текстовых файлов (.csv, .txt и .tab) и рабочих листов Excel: широта и долгота в десятичных градусах, Military Grid Reference System (MGRS) и United States National Grid (USNG). В источнике столбцы координат ищутся в следующем порядке: широта и долгота в отдельных столбцах, широта и долгота в одном столбце, MGRS и, наконец, USNG.

    Примечание:

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

    Ниже приведены допустимые имена столбцов:

    • Широта — latitude, lat, y_coordinate, y_coord и y
    • Долгота — longitude, long, lon, x_coordinate, x_coord и x
    • Широта/долгота — latitude_longitude, lat_long, lat_lon, xy_coordinate, xy_coordinates, xy_coord, xy_coords и xy
    • Координаты MGRS — mgrs, mgrs_coordinate, mgrs_coordinates, mgrs_coord и mgrs_coords
    • Координаты USNG — usng, usng_coordinate, usng_coordinates, usng_coord и usng_coords

  • Импортируются все листы рабочей книги 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.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. Если файл слоя не существует, к выходному слою будет применен символ по умолчанию.

Параметры

ПодписьОписаниеТип данных
Входные данные

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

Folder; File
Целевая база геоданных

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

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
Включить вложенные папки
(Дополнительный)

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

  • Отмечено - будут исследоваться все подпапки. Это значение по умолчанию
  • Не отмечено - будет исследоваться только папка верхнего уровня.

Boolean
Включить покрытие снимками
(Дополнительный)

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

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

  • Отмечено – наложения на земную поверхность включаются в выходные данные. Это значение по умолчанию
  • Не отмечено – наложения на земную поверхность не включаются в выходные данные.

Boolean

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

ПодписьОписаниеТип данных
Обновленная база геоданных

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

Workspace

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

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

Folder; File
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

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

ИмяОписаниеТип данных
out_geodatabase

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

Workspace

Пример кода

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)

Параметры среды

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

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

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

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