def get(options, parameters = [], referer = nil)
unless options.is_a? Hash
url = options
unless parameters.respond_to?(:each)
referer = parameters
parameters = []
end
else
raise ArgumentError.new("url must be specified") unless url = options[:url]
parameters = options[:params] || []
referer = options[:referer]
headers = options[:headers]
end
referer ||= current_page || Page.new(nil, {'content-type'=>'text/html'})
unless referer.is_a?(WWW::Mechanize::File)
referer = referer.is_a?(String) ?
Page.new(URI.parse(referer), {'content-type' => 'text/html'}) :
Page.new(referer, {'content-type' => 'text/html'})
end
page = fetch_page( :uri => url,
:referer => referer,
:headers => headers || {},
:params => parameters
)
add_to_history(page)
yield page if block_given?
page
end