Введение
Данная статья является руководством по созданию своих плагинов импорта открытых данных для платформы Geo2Tag. Детальная информация о базовых классах и общих интерфейсах таких плагинов доступна в статье Интерфейсы плагинов для импорта открытых данных.
...
- Job - абстрактный класс для задания импорта.
- OpenDataObjectsLoader - базовый класс для загрузки элементов открытых данных из внешнего источника.
OpenDataToPointTranslator - абстрактный класс для конвертации элементов открытых данных в формат точек Geo2Tag. При его наследовании необходимо переопределить методы
getPointJson(
self
) и
getPoint(
self
)
(подробно структура класса описана в документе Интерфейсы плагинов для импорта открытых данных). Пример наследования:Code Block language py class MyOdtoPointTranslatorclass MyOdtoPointTranslator(OpenDataToPointTranslator): def getPointJson def getPointJson(self): # Default content obj = {} obj content obj = {} obj['version'] = self.version obj self.version obj['import_source'] = self.importSource self.importSource # Newly added content content obj['image_url'] = self.objectRepresentation['images'][0] return obj def getPoint return obj def getPoint(self): # Default content point = # Default content point = {'json': self self.getPointJson()} point point['channel_id'] = self.channelId self.channelId # Newly added content # Filling all mandatory fields of of point lat = self self.objectRepresentation['latitude'] lon = objectRepresentation['longitude'] point['location'] = {'type': 'Point', 'coordinates': [lat, lon]} point['alt'] = self self.objectRepresentation['altitude'] point['date'] = datetime.now() point['bc'] = false return point return point
- OpenDataObjectsParser - абстрактный класс для разделения массива открытых данных на отдельные элементы.
- OpenDataToPointsLoader - абстрактный класс для записи точек в БД Geo2Tag.
- ODImportParser - парсер аргументов для REST запросов к плагину.
...