Продолжаем тему веб-скрапинга. Сегодня мы предлагаем вашему вниманию решение для языка программирования Ruby и стремительно набирающего популярность фреймворка Ruby on Rails. Итак, давайте поговорим о Readability.
Сразу же сделаем небольшую оговорку и заметим, что есть одноименное приложение, доступное в App Store и GooglePlay. Оно также существует в виде браузерного плагина. Как вы понимаете, речь пойдет не о нем, а о библиотеке для фреймворка Ruby on Rails — ruby-readability, реализующей алгоритм веб-скрапинга. Ее создателями является команда разработчиков “Arc 90’s Labs”. На сегодняшний день библиотека имеет несколько интерпретаций на разных языках программирования. Один из них — Ruby.
Установка и использование
Для использования библиотеки достаточно добавить гем ‘ruby-readability’ в Gemfile.
gem ‘ruby-readability’, require: ‘readability’
И запустить bundle install.
Readability готов к работе. Для использования библиотеки в коробочном варианте создадим простой сервис:
А теперь опробуем его в работе. Для этого необходимо создать новый инстанс и вызвать на нем метод read для целевой ссылки:
Результаты довольно оптимистичны. Однако для полноценной работы сервиса, придется что-то дописывать. А это наверняка вызовет трудности у начинающих веб-разработчиков. Об опытных “рубистах” такого не скажешь. Люди, имеющие опыт работы с Ruby on Rails, справятся с поставленной задачей легко и играючи. Еще и спасибо скажут. А напоследок добавят, что библиотека Readability является настоящим “кладом” для реализации мощного скрапинга веб-сайтов.