Я ищу написать код, который выполняет визуальный анализ веб-страниц, предпочтительно с использованием Ruby. Мой код должен быть в состоянии определить верхнюю, левую, ширину, высоту, цвет фона, цвет и размер шрифта для всех элементов в DOM. Конечно, эти значения могут быть рассчитаны только после применения всего CSS. Так что я не думаю, что Нокогири подходит для этой работы. В конечном счете, я пытаюсь использовать эти данные в алгоритме, подобном VIPS (Vision-Based Page Segmentation), чтобы найти основной контент в загруженных новостных статьях.
Я подумал об использовании Watir для управления Chrome или Firefox, а затем извлечения данных. Проблема в том, что браузеры не могут работать без Watir (я думаю). В конечном итоге этот код будет работать на множестве серверов Linux в центре обработки данных. Таким образом, код не будет иметь легкого доступа к X-серверу для отображения браузера.
Полагаю, одним из решений является использование Watir и запуск безголового X-сервера на серверах Linux. Это немного больно, но сейчас это мой лучший вариант.
У кого-нибудь есть идеи получше?