[前][次][番号順一覧][スレッド一覧]

rails:2217

From: Kyoko Sato <k.sato@a...>
Date: Tue, 12 Jun 2007 11:43:37 +0900
Subject: [rails:2217] Re: wgetとRailsについて

内海@ベルギーさん、杉浦さん、有難うございます。
今見ていたところなのですが、

私のところでも、同様に駄目でした。
/usr/bin/wget -k -O /dev/stdout http://www.xxx.co.jp/
ただ、rubyのプログラムではきちんと動いています。

> ruby -e 'open("| wget -q -O/dev/stdout http://localhost/"){|f| p f.read }'
>  # => "<html><body><h1>It works!</h1></body></html>"
> 
> ruby -e 'open("| wget -q -k -O- http://localhost/"){|f| p f.read }'
>  # => "<html><body><h1>It works!</h1></body></html>"
> 
> ruby -e 'open("| wget -q -k -O/dev/stdout http://localhost/"){|f| p f.read }'
>  # プロンプトが帰ってこない (shell と同じ)

上記の結果になりました。
有難うございました。

On Mon, 11 Jun 2007 19:55:42 +0900
Tatsuki Sugiura <sugi@n...> wrote:

> 杉浦です。
> 
> 内海さんの書かれている通り open-uri とか使った方がいいよ、
> と言うのはあるのですが。
> 
> ちょっと気になったので試してみました。
> 
> >>> In Message "[rails:2208] wgetとRailsについて"
> >>>            <20070611181914.8F57.K.SATO@a...>,
> >>> Kyoko Sato <k.sato@a...>  said;
> > コマンドライン上で以下のコマンドはきくのですが、
> > /usr/bin/wget -k -O /dev/stdout http://www.xxx.co.jp/
> 
> これ、本当にプロンプトが帰ってきますか?
> 
> 手元で実行すると取得した HTML が出力されたあと、Ctrl-D を
> 押さないと終わってくれません。
> 
> どうも -k -O /dev/stdout オプションの指定が悪そうです。
> 
> > Rails上では、以下のコードで詰まってしまいます。
> >   allhtml = ""
> >   wget = open("|/usr/bin/wget -k -O /dev/stdout \"http://www.xxx.co.jp/\"}")
> >   while wgetLine = wget.gets
> >     allhtml += wgetLine if (wgetLine != nil)
> >   end
> >   wget.close
> 
> > allhtmlに、データを取得したいのですが、何がおかしいのか
> > 教えていただけないでしょうか?
> > 宜しくお願いします。
> 
> ruby -e 'open("| wget -q -O/dev/stdout http://localhost/"){|f| p f.read }'
>  # => "<html><body><h1>It works!</h1></body></html>"
> 
> ruby -e 'open("| wget -q -k -O- http://localhost/"){|f| p f.read }'
>  # => "<html><body><h1>It works!</h1></body></html>"
> 
> ruby -e 'open("| wget -q -k -O/dev/stdout http://localhost/"){|f| p f.read }'
>  # プロンプトが帰ってこない (shell と同じ)
> 
> wget のソース読まずに strace しただけなので予想ですが、 -O の後ろに - で
> はなくて/dev/stdout を指定してしまうと、ストリームではなくて普通のファイル
> として認識するんじゃないでしょうか。
> 
> で、-k が付いているので、再度そのファイルを open しなおしてコンテンツを
> 書き換えようとします。ところがファイルが /dev/stdout なので入力待ちで
> ブロックする。と、多分そういう原因ではないかなと。
> 
> -- 
> Tatsuki Sugiura   mailto:sugi@n...
> 
> --
> ML: rails@r...
> 使い方: http://QuickML.com/

-- 
Kyoko Sato <k.sato@a...>


--
ML: rails@r...
使い方: http://QuickML.com/

[前][次][番号順一覧][スレッド一覧]

      2175 2007-05-15 12:20 [yuichi_katahira@m...] Rails勉強会@東北第0回 開催のお知らせ    
      2176 2007-05-15 12:41 ┗[kueda@z...          ]                                       
      2177 2007-05-15 12:58  ┗[yuichi_katahira@m...]                                     
      2208 2007-06-11 11:20   ┗[k.sato@a...         ] wgetとRailsについて               
      2212 2007-06-11 12:55    ┣[sugi@n...           ]                                 
      2214 2007-06-11 13:01    ┃┣[dc@p...             ]                               
->    2217 2007-06-12 04:43    ┃┗[k.sato@a...         ]                               
      2215 2007-06-12 02:27    ┗[stoyan@g...         ]                                 
      2218 2007-06-12 07:04     ┗[k.sato@a...         ]