ruby - Mechanize :避免网络服务器锁定

标签 ruby mechanize

我有这个代码:

#!/bin/env ruby
# encoding: utf-8

require 'mechanize'

begin
    agent = Mechanize.new
    agent.robots = false
    agent.user_agent_alias = 'Mac Safari'
    url =  "http://www.paris.cl/tienda/es/paris/computacion/tablet/tablet-acer--iconia-b1-710-l688-7-342750-ppp-"

    website = agent.get(url)

rescue Exception => e 
    puts "Error : " + e.message 
end

这试图获得一个网站,但我收到此错误:
Error : 403 => Net::HTTPForbidden for http://www.paris.cl/tienda/es/paris/computacion/tablet/tablet-acer--iconia-b1-710-l688-7-342750-ppp- -- unhandled response

网络服务器阻止了我(在我获得网站之前),我尝试更改 IP,但没有任何 react 。

存在任何形式来避免这种锁定吗? (我也不知道这是哪种锁)

格雷廷斯

最佳答案

您的代码对我有用,显然您以不 protected 用户身份(没有正确的 HTTP header )踢了他们的资源几次,并且他们已经阻止了您的 IP。

发生在我们最好的人身上:)

关于ruby - Mechanize :避免网络服务器锁定,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20644926/

相关文章:

ruby-on-rails - 管理 Rails 的 gem 版本/依赖项

ruby - 如何正确国际化 Sinatra 页面?

ruby-on-rails - HTML 解析 : How to find the image in the document, 哪个被大多数文本包围?

ruby - 如何将 "if"语句重构为 "unless"语句?

javascript - Rails jquery 在任何情况下都无法加载

ruby - 无法在 Windows 中使用 Cygwin 安装 Mechanize(错误 : Failed to build gem native extension.)

ruby - 使用 Mechanize 从 http 响应中获取字符串值

jquery - Rails 3.1 和 ajax 创建的表单不提交

ruby-on-rails - Mechanize 无法连接到站点