修复416错误:HTTParty

时间:2016-08-07 16:36:37

标签: ruby http get http-headers httparty

尝试使用HTTParty获取网站时出现416错误。在浏览器中工作正常。

我之前从未收到此错误,所以我上网找到了这个:

  

当服务器无法满足请求时发生。这可能   例如,因为客户端要求第800至第900字节   一个文档,但文档只有200个字节。

     

请求包括Range请求标头字段,而不是任何   此字段中的范围说明符值与当前范围重叠   所选资源,以及请求不包括   If-Range请求标头字段。

想知道是否有人之前已经获得了416与HTTParty以及是否有办法阻止这种形式发生。感谢

发生错误的示例网站: http://www.bizjournals.com/jacksonville/blog/morning-edition/2014/07/teens-make-up-less-of-summer-workforce-than-ever.html

1 个答案:

答案 0 :(得分:1)

似乎bizjournals能够检测到你是一个机器人(不能在浏览器中访问),因此返回416.

irb(main):005:0> HTTParty.get('http://www.bizjournals.com/jacksonville/blog/morning-edition/2014/07/teens-make-up-less-of-summer-workforce-than-ever.html').body
=> "........As you were browsing <strong>http://www.bizjournals.com</strong> something about your browser made us think you were a bot. There are a few reasons this might happen........"

您可以要求商业期刊允许您提出请求或尝试更改标题,以使商业期刊认为您不是机器人。