Разбор HTML с использованием библиотек ruby ​​core? (т.е. не требуется драгоценных камней) - PullRequest
2 голосов
/ 25 февраля 2012

Некоторые друзья и я работали над набором сценариев, облегчающих работу на машинах в универе.Один из этих инструментов в настоящее время использует Nokogiri, но для того, чтобы эти инструменты работали на всех машинах с минимально возможной настройкой, мы пытались найти «собственный» html-парсер, вместо того, чтобы требовать от пользователей установки RVM и пользовательских гемов (из-за ограничений дискового пространства для большинства пользователей).

Мы в значительной степени ограничены Nokogiri / Hpricot /?Должны ли мы просто написать собственный настраиваемый парсер, который соответствует нашим потребностям?

Cheers.

РЕДАКТИРОВАТЬ: Если здесь есть сообщения, которые я пропустил в моих поисках, дайте мне знать!ТАК иногда бывает слишком много, чтобы эффективно находить вещи ...

1 Ответ

1 голос
/ 26 февраля 2012

В ruby ​​stdlib нет html-парсера
парсеры html должны быть более щадящими, чем парсеры xml

Вы можете запустить HTML, хотя аккуратно (http://tidy.sourceforge.net)
привести в порядок HTML и произвести корректную разметку
Теперь это можно прочитать через rexml :-), который находится в stdlib

rexml намного медленнее, чем nokogiri, последняя проверка в 2009
Сэм Руби работал над тем, чтобы сделать rexml быстрее, хотя

Лучше было бы иметь лучшее развертывание
Взгляните на http://gembundler.com/bundle_package.html и используйте capistrano (или некоторые другие) для подготовки серверов

...