ご存知のように、一部のキャプチャはユーザー セッションを使用して生成されており、アプリをテストするためにこの画像をコンピューターに保存する必要がありますが、どのように、そして何を選択すればよいでしょうか?
たとえば、http::get では、Cookie を使用して次のようなコードがあります。
http = Net::HTTP.new('***', 443)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE
path = '****'
# GET request -> so the host can set his cookies
resp, data = http.get(path)
body_text = resp.body
#puts "Body = #{body_text}"
cookie = resp.response['set-cookie'].split('; ')[0]
@captcha_url = (/BotDetectCaptcha.ashx?get=image&c=***;t=(.*)" \/>/.match body_text)
# POST request -> logging in
puts "captcha_url = #{@captcha_url}"
data = 'BotDetectCaptcha.ashx?get=image&c=****&t=#{@captcha_url}'
headers = {
'Cookie' => cookie,
'Referer' => '****',
'Content-Type' => 'image-jpeg'
}
resp, data = http.post(path, data, headers)
だから、たぶん、私は必要なイメージを持っていますが!どうすれば保存できますか? すべてのグーグルの記事は、open-uriを使用する必要があると言っていますが、セッションも使用する必要がある場合はどうすればよいですか? 多分私はルビーからのhttpクラスで何とかそれを行うことができますか?
ロードされたページから、またはURL経由で画像をダウンロードするにはどうすればよいですか?