Я использую RSS :: Parser из Ruby 1.8.7, часть stdlib. Я новичок в Ruby.
Я хочу разобрать канал RSS, внести некоторые изменения в данные, а затем вывести их (как RSS).
документы говорят, что я могу использовать '#to_s', но, похоже, это работает с некоторыми каналами, но не с другими.
Это работает:
#!/usr/bin/ruby -w
require 'rss'
require 'net/http'
url = 'http://news.ycombinator.com/rss'
feed = Net::HTTP.get_response(URI.parse(url)).body
rss = RSS::Parser.parse(feed, false, true)
# Here I would make some changes to the RSS, but right now I'm not.
p rss.to_s
Возвращает ожидаемый результат: текст XML.
Это не удалось:
#!/usr/bin/ruby -w
require 'rss'
require 'net/http'
url = 'http://feeds.feedburner.com/devourfeed'
feed = Net::HTTP.get_response(URI.parse(url)).body
rss = RSS::Parser.parse(feed, false, true)
# Here I would make some changes to the RSS, but right now I'm not.
p rss.to_s
ничего не возвращает (пустые кавычки).
И все же, если я изменю последнюю строку на:
p rss
Я вижу, что объект заполнен всеми данными подачи. Это метод to_s, который не работает.
- Почему?
- Как я могу получить какой-нибудь вывод ошибок для отладки такой проблемы?