logo       

[ruby-list:42084] [Q] http get 時の form への入力について: msg#00115

lang.ruby.japanese

Subject: [ruby-list:42084] [Q] http get 時の form への入力について

はじめまして、ruby 勉強中の 逸見と申します。

今流行の成分解析を ruby からコマンドラインでやりたい
と思い練習でプログラムを書いてみたのですがうまくいきません。

●やりたいこと
perl で書くと↓のようになります

my $name = $ARGV[0];
my $url = URI->new('http://seibun.nosv.org/');
$url->query_form( 'p' => encode('euc-jp', $name));
#print $url, "\n";

要は、↓相当のことをしたいだけなんですが、これがうまくいきません。
w3m 'http://seibun.nosv.org/?p=test'

●問題点
open で、直接パラメータを書き込んでやると動くんですが
require 'open-uri'
open("http://seibun.nosv.org/?p=test";) {|f|
f.each_line {|line| p line}
}

↓みたいに、ハッシュとして与えてやると動きません(パラメータを与えない
のと同じ動作になります)

open("http://seibun.nosv.org/";, {"p" => "test"}) {|f|
f.each_line {|line| p line}
}

Net::HTTP.get を使っても駄目でした。

require 'net/http'
Net::HTTP.version_1_2 # おまじない

header={ "p" => "test"]}
Net::HTTP.start('seibun.nosv.org', 80) {|http|
response = http.get('/', header)
puts result_of_analisys(response.body)
}

諸先輩方の御指導をお願い致します。
--
逸見研一(いつみけんいち)
Mixi http://mixi.jp/show_friend.pl?id=113732
Orkut http://www.orkut.com/Profile.aspx?uid=11299027584966195898
Blog http://d.hatena.ne.jp/amt/
Plan http://calendar.yahoo.co.jp/amt_tmp




<Prev in Thread] Current Thread [Next in Thread>
Google Custom Search

News | FAQ | advertise