Институт открытых данных разрабатывает службу проверки CSV, которая позволит пользователям проверять структуру своих данных, а также проверять ее по простой схеме.
Служба все еще находится в альфа-версии, но можетможно найти здесь:
http://csvlint.io/
Код приложения и лежащая в его основе библиотека имеют открытый код:
https://github.com/theodi/csvlint
https://github.com/theodi/csvlint.rb
README в библиотеке предоставляет сводку ошибок и предупреждений, которые могут быть сгенерированы.Возможны следующие типы ошибок:
:wrong_content_type
- тип содержимого не текстовый / csv :ragged_rows
- строка содержит другое количество столбцов (чемпервая строка в файле) :blank_rows
- полностью пустая строка, например, пустая строка или строка, в которой все значения столбца пусты :invalid_encoding
- ошибка кодирования при разборе строкиНапример, из-за недопустимых символов :not_found
- ошибка HTTP 404 при извлечении данных :quoting
- проблема с кавычками, например, отсутствующая или случайная кавычка, незакрытое поле кавычек :whitespace
- столбец в кавычках имеет пробел в начале или в конце
Можно сообщить о следующих типах предупреждений:
:no_encoding
-Заголовок Content-Type, возвращаемый в HTTP-запросе, не имеет параметра charset :encoding
- набор символов не является UTF-8 :no_content_type
- файл обслуживается беззаголовок Content-Type :excel
- заголовок Content-Type отсутствует, расширение файла - .xls :check_options
- файл CSV содержит только один столбец :inconsistent_values
- несовместимые значения в одном столбце.Сообщается, если <90% значений имеют одинаковый тип данных (числовой или буквенно-цифровой, включая знаки препинания) </li>