четверг, 22 января 2009 г.

Об импорте XML данных в Drupal

Постом ранее была описана проблема: Drupal и XML.

Потратив немного времени в поисках решения задачи импорта XML данных в Drupal остановился на отличном, замечательном классном супер-пупер модуле под названием FeedAPI.

Модуль действительно может решить любые поставленные задачи по импорту XML фидов, да и не только их. В стандартной поставке он уже умеет импортировать наиболее популярные форматы, Atom, RSS различных версий.

Но радует сама реализация модуля. Есть ядро модуля, т.е. API и есть 2 типа обработчиков: парсеры (parser) и процессоры (processor).

Парсеры отвечают за... понятное дело, парсинг данных, не важно, каких и преобразуют их в "нормализованный" XML.

Процессоры отвечают за последующую обработку данных и передачу, публикацию или что угодно в Drupal.

Сейчас уже существует целый набор модулей, которые работают с общепринятыми данными, CSV, iCal, KML (географические XML данные), а так же есть модуль, который может импортировать (scraping) комментарии и также может обрастать парсерами (уже умеет тянуть комментарии из flickr, youtube, vimeo).

Есть готовые процессоры. Во-первых, собственный процессор модуля FeedAPI, который создаёт, обновляет и удаляет ноды. Есть RDF процессор, работающий совместно с модулем RDF, ну и наконец тот же FeedAPI comments, который умеет создавать комментарии.

Ко всему вышесказанному, надо добавить, что существует бонусная бочка мёда в виде модуля Feed Element Mapper, который является мостиком дружбы между FeedAPI и всеми любимого CCK. Модуль позволяет сохранять элементы импортированных данных в нужные CCK поля. Что ещё нужно для счастья? :)


Бля, осталось только написать свой парсер и процессор! :( Счастье не за горами!

2 комментария:

online erectile dysfunction prescription комментирует...

I every time used to study piece of writing in news papers but now as I am a user of net so from now I am using net for articles, thanks to web.

erectile dysfunction medications комментирует...

Very good article. I certainly love this website. Thanks!