Как очищать логотипы с веб-сайтов?

Во-первых, это не вопрос о том, как очищать веб-сайты. Я полностью осведомлен о доступных мне инструментах для очистки (css_parser, nokogiri и т. Д. Я использую Ruby для очистки).

Это скорее общий вопрос о наилучшем возможном решении для очистки логотип веб-сайта, начинающийся только с адреса веб-сайта.

Я начал создавать следующие два решения:

  1. Используйте API-интерфейсы Google AJAX, чтобы выполнить поиск изображений с привязкой к рассматриваемому сайту с запросом «логотип» и получить первый результат. Я бы сказал, что это приводит к появлению логотипа примерно в 30% случаев.
  2. Проблема в том, что Google, похоже, не заботится о логотипах, замененных изображениями CSS (т.е. текст H1, который заменяется изображением на логотип). Решение, которое я предварительно придумал, состоит в том, чтобы вытащить все файлы CSS, просканировать объявления url (), а затем найти слова заголовок или логотип в именах файлов.

Решение второе проблематично из-за множества идиосинкразий всех людей, которые пишут CSS для веб-сайтов. В имени файла используется заголовок вместо логотипа. Иногда имя файла случайное, ничего не говоря о логотипе. В других случаях это просто неправильный образ.

Я понимаю, что , возможно, смогу что-то сделать с помощью машинного обучения, но у меня почти наступил крайний срок для клиента, и мне скоро понадобится что-то достаточно эффективное.

Итак, с учетом всего сказанного, если у кого-то есть какие-то "нестандартные" мысли по этому поводу, я хотел бы это услышать. Если я смогу создать решение, которое будет работать достаточно хорошо, я планирую открыть исходный код библиотеки для любых других заинтересованных сторон :)

Спасибо!

5
задан Keith Hanson 9 April 2011 в 20:34
поделиться