Следующий код работает отлично.
@doc = open(link) { |f| Hpricot(f) }
Но я хочу использовать следующий код, который, кажется, не очень хорошо работает с блоком Hpricot (например, @doc - это объект TempFile, а не объект документа Hpricot)
@doc = resolve_link(link) { |f| Hpricot(f) }
def resolve_link(link)
begin
return open(link)
rescue
logger.debug("#{$!} for link #{link}")
raise Exceptions::ErrorResolvingLink.new("Cannot resolve link #{link}.")
end
end
Есть идеи, как заставить работать вторую версию кода?