Я столкнулся с аналогичной проблемой с Nokogiri, но на OS X 10.5. Тем не менее, я сначала попытался открыть open-uri, чтобы открыть страницы, на которых есть много HTML-тегов. Я нашел с помощью:
urldoc = open('http://hivelogic.com/articles/using_usr_local')
urldoc.readlines{|line| puts line}
Я бы увидел много прекрасного HTML. Я также обнаружил, что, прочитав «файл» в строку и передав его в Nokogiri, я смог заставить его работать нормально. Мне даже пришлось изменить само демо, которое они используют на rubyforge, чтобы рассказать вам о Нокогири.
Используя собственный пример, я получаю это:
>> doc = Nokogiri::HTML(open('http://www.google.com/search?q=tenderlove'))
=> <!DOCTYPE html>
>> doc.children
=>
YUCK!
Если я настрою чтение в URL-адресе строки, я получу хороший материал:
>> doc = Nokogiri::HTML(open('http://www.google.com/search?q=tenderlove').read)
=> <!DOCTYPE html>
<html>
<head>
..... TONS OF HTML HERE ........
</div>
</body>
</html>
Примечание
Я вижу это прекрасное предупреждение, когда использую irb для игры:
HI. Вы используете libxml2 версии 2.6.16, которой более 4 лет.
много ошибок. Мы предлагаем для максимального удовольствия разбора HTML / XML, вы
обновите вашу версию libxml2 и переустановите nokogiri. Если вам нравится использовать
libxml2 версия 2.6.16, но не нравится это предупреждение, пожалуйста, определите константу
I_KNOW_I_AM_USING_AN_OLD_AND_BUGGY_VERSION_OF_LIBXML2, прежде чем потребовать нокогири.
Но я не в настроении иметь дело с ужасами и различными экспертами, но противоречащим советам по исправлению libxml в / usr / local blah blah. Сообщение о тексте ссылки прекрасно объясняет это, но затем другой * nix wizard атакует саму концепцию с некоторыми звуковыми предупреждениями и проблемами. Поэтому я говорю «ни за что».
Почему я пишу это? Потому что IMO, я думаю, что может быть связь между моим блюзом Nokogiri и предупреждением libxml. OS X 10.5 на старом материале, и они могут иметь проблемы с этим.
ВОПРОС
Есть ли у других пользователей OS X 10.5 эта проблема с Nokogiri?