[Moscow.pm] Передача данных скрипту
Павел Тимонин
gg.error на gmail.com
Вт Ноя 25 05:09:47 PST 2008
Здравствуйте, товарищи.
Задача стоит так: есть перл-модули (самописные), созданные для парсинга
неких данных и закладывания их в базу.
С использованием этих модулей нужно написать скрипт, который будет
собственно получать данные и отдавать их функциям модуля.
Данные поступают в виде xls-файлов, которые по всей видимости набивают
девочки какие-то, поэтому данные несколько странно выглядят.. но не в этом
суть, ибо функции модуля обучены эти странности отлавливать и либо
исправлять, либо сообщать об ошибке в специальную таблицу без останова
работы скрипта.
Вопрос: как передавать данные скрипту:
1. Наиболее правильно.
2. Наиболее просто (чтобы юзер типа менеджера мог справиться с этой задачей,
а я потом разбирался с обнаруженными ошибками).
Скрипты и модуль написаны под utf-8.
Сейчас передаю через csv, разделители - ";". Плохо, что эксель не особо
может выдавать utf-8 и csv в таком формате - что-то не всегда получается, он
стремится сделать разделитлями запятые, а кодировка естественно cp1251.
Виндовый юникод как-то разительно отличается от utf-8. Видимо, это ucs-4,
хотя я могу легко ошибаться.
Пробовал использовать Spreadsheet::ParseExcel с CPAN, но оказалось что
входные файлы бывают двух видов: которые парсятся им нормально (объектным
методом, вытаскивая форматированный текст в utf8) и которые им нормально не
парсятся (то есть надо вынимать текст напрямую и он в "неправильной"
кодировке cp1251, а если попросить текст с форматированием идут пустые
строки или вообще какой-то бред, не поддающийся раскодированию).
1. и 2. вообще говоря могут иметь разные ответы.
Заранее спасибо.
----------- следущая часть -----------
Вложение в формате HTML было извлечено…
URL: <http://mail.pm.org/pipermail/moscow-pm/attachments/20081125/0422fef5/attachment-0001.html>
Подробная информация о списке рассылки Moscow-pm