当URL具有参数时,卷曲不起作用

时间:2017-05-02 15:06:14

标签: ruby curl web-scraping

我在Curl脚本中使用Ruby来抓取这种页面:

https://www.example.com/page.html?a=1&b=2&c=3&d=4

使用此代码:

value = `curl #{ARGV[0]} | grep "findMe:"`
result = value.scan(/findMe: (.*)/).flatten.first.split('$').last.gsub(',', '').to_f
puts result 

但由于该页面正在使用301重定向,因此失败了,所以我添加了-L 属性:

value = `curl -L #{ARGV[0]} | grep "findMe:"`
result = value.scan(/findMe: (.*)/).flatten.first.split('$').last.gsub(',', '').to_f
puts result 

现在返回结果很好,但脚本没有结束。在SSH termail上,就像在显示结果后问我其他参数一样。所以我必须按回车才能中止剧本。

当我在网络应用中实现此功能时,脚本无效,可能是由于此参数相关问题。

因此,我如何告诉curl在显示结果后立即中止,或者,首先忽略给定url中的任何参数(因为它们不影响页面内容)。所以它会自动刮掉这一部分:

https://www.example.com/page.html

0 个答案:

没有答案