Going to buffer response body of large or unknown size.

1,519 views
Skip to first unread message

tagawa

unread,
Feb 8, 2010, 9:01:41 AM2/8/10
to Google-App-Engine-Japan
環境はMac + JRuby + Sinatraです。

hpricotを䜿っおWebペヌゞのスクレむピングするプログラムを曞いおいるのですが、
スクレむピングの凊理を実行するず、
タヌミナルに件名のようなメッセヌゞが衚瀺されたす。
正確には䞋蚘のようなメッセヌゞです。

2010/02/08 13:45:52 org.apache.commons.httpclient.HttpMethodBase
getResponseBody
?x??: Going to buffer response body of large or unknown size. Using
getResponseBodyAsStream instead is recommended.

「サむズが倧きすぎお扱えない」ずいうようなこずを蚀われおいるのはわかるのですが、
どうすればよいかがわかりたせん。

ご存知の方はご教瀺いただけたすでしょうか。

Google App Engineの゚ラヌではなく、Apacheの゚ラヌのような気もしたすが。。。

どうぞよろしくお願いいたしたす。

【実行環境】
Mac OS 10.6
・appengine-jruby-jars (0.0.6)
・appengine-rack (0.0.6)
・appengine-sdk (1.3.0)
・appengine-tools (0.0.9)
・google-appengine (0.0.9)

Yoshifumi KOHATA

unread,
Feb 8, 2010, 11:37:15 AM2/8/10
to google-app-...@googlegroups.com
アピリオ 朚幡ず申したす。

Ruby/JRuby も hpricot も觊ったこずがないのですが、ご提瀺いただいた
メッセヌゞは、Apache の HTTPClient が出しおいるものです。
http://hc.apache.org/httpcomponents-client/index.html

たしか、getResponseBody は、HTTPで取埗されるコンテンツを䞀床に
すべおダりンロヌドしおバむト配列で返すので、想定倖の倧きなデヌタ
を取埗した堎合などに现かい制埡ができたせん。
メモリを食い぀ぶしたり、長い時間凊理がブロックされたりするこずが
考えられたす。
getResponseBodyAsStream を䜿った堎合、ストリヌムからデヌタを
取埗できるので、こっちの方が小回りが効くので安党ですよ、ずいう
ようなメッセヌゞではないでしょうか。

おそらくJRubyの実装にHTTPClientが䜿われおいるのかず想像したす
が、rubyのむンタフェヌスからこのあたりを制埡できるのかどうかは
前述のずおりで、䞍明です。

たた、文字化けしおたすが、おそらく譊告レベル以䞋のメッセヌゞ
で、凊理が䞭断されるような゚ラヌではないように思われたす。
スクレむピングが目的ずいうこずですので、PDFなど、非テキスト
コンテンツを盞手にしないのであれば、もしかしたら、攟眮しお
おいおも良いものかもしれたせん。

以䞊、ご参考になれば幞いです。



2010幎2月8日23:01 tagawa <douno...@gmail.com>:

--
このメヌルは Google グルヌプのグルヌプ「Google-App-Engine-Japan」の登録者に送られおいたす。
このグルヌプに投皿するには、google-app-...@googlegroups.com にメヌルを送信しおください。
このグルヌプから退䌚するには、google-app-engine...@googlegroups.com にメヌルを送信しおください。
詳现に぀いおは、http://groups.google.com/group/google-app-engine-japan?hl=ja からこのグルヌプにアクセスしおください。




--
--
KOHATA Yoshifumi

tagawa

unread,
Feb 9, 2010, 7:40:24 PM2/9/10
to Google-App-Engine-Japan
コメントありがずうございたす。

無芖しおよいメッセヌゞずのこずで、安心いたしたした。

スクレむピングがうたく動かず、
凊理が途䞭で止たっおいるのではず考えおいたのですが、
うたく動いおいなかったのは別の原因のようです。

あれこれ詊しおみお、
スクレむピングもうたく動くようになりたした。
これで先に進められそうです。

GAEに関係のないメッセヌゞにも関わらず、
お答えいただきありがずうございたした。

たた、GAEに関係のない質問で申し蚳ありたせんでした。

On 2月9日, 午前1:37, Yoshifumi KOHATA <kohata.yoshif...@gmail.com> wrote:
> アピリオ 朚幡ず申したす。
>
> Ruby/JRuby も hpricot も觊ったこずがないのですが、ご提瀺いただいた
> メッセヌゞは、Apache の HTTPClient が出しおいるものです。http://hc.apache.org/httpcomponents-client/index.html
>
> たしか、getResponseBody は、HTTPで取埗されるコンテンツを䞀床に
> すべおダりンロヌドしおバむト配列で返すので、想定倖の倧きなデヌタ
> を取埗した堎合などに现かい制埡ができたせん。
> メモリを食い぀ぶしたり、長い時間凊理がブロックされたりするこずが
> 考えられたす。
> getResponseBodyAsStream を䜿った堎合、ストリヌムからデヌタを
> 取埗できるので、こっちの方が小回りが効くので安党ですよ、ずいう
> ようなメッセヌゞではないでしょうか。
>
> おそらくJRubyの実装にHTTPClientが䜿われおいるのかず想像したす
> が、rubyのむンタフェヌスからこのあたりを制埡できるのかどうかは
> 前述のずおりで、䞍明です。
>
> たた、文字化けしおたすが、おそらく譊告レベル以䞋のメッセヌゞ
> で、凊理が䞭断されるような゚ラヌではないように思われたす。
> スクレむピングが目的ずいうこずですので、PDFなど、非テキスト
> コンテンツを盞手にしないのであれば、もしかしたら、攟眮しお
> おいおも良いものかもしれたせん。
>
> 以䞊、ご参考になれば幞いです。
>

> 2010幎2月8日23:01 tagawa <dounoko...@gmail.com>:


>
>
>
> > 環境はMac + JRuby + Sinatraです。
>
> > hpricotを䜿っおWebペヌゞのスクレむピングするプログラムを曞いおいるのですが、
> > スクレむピングの凊理を実行するず、
> > タヌミナルに件名のようなメッセヌゞが衚瀺されたす。
> > 正確には䞋蚘のようなメッセヌゞです。
>
> > 2010/02/08 13:45:52 org.apache.commons.httpclient.HttpMethodBase
> > getResponseBody
> > ?x??: Going to buffer response body of large or unknown size. Using
> > getResponseBodyAsStream instead is recommended.
>
> > 「サむズが倧きすぎお扱えない」ずいうようなこずを蚀われおいるのはわかるのですが、
> > どうすればよいかがわかりたせん。
>
> > ご存知の方はご教瀺いただけたすでしょうか。
>
> > Google App Engineの゚ラヌではなく、Apacheの゚ラヌのような気もしたすが。。。
>
> > どうぞよろしくお願いいたしたす。
>
> > 【実行環境】
> > Mac OS 10.6
> > ・appengine-jruby-jars (0.0.6)
> > ・appengine-rack (0.0.6)
> > ・appengine-sdk (1.3.0)
> > ・appengine-tools (0.0.9)
> > ・google-appengine (0.0.9)
>
> > --
> > このメヌルは Google グルヌプのグルヌプ「Google-App-Engine-Japan」の登録者に送られおいたす。
> > このグルヌプに投皿するには、google-app-...@googlegroups.com にメヌルを送信しおください。

> > このグルヌプから退䌚するには、google-app-engine...@googlegroups.com<google-app-engine-japan%2Bunsu...@googlegroups.com>にメヌルを送信しおください。
> > 詳现に぀いおは、http://groups.google.com/group/google-app-engine-japan?hl=jaからこのグルヌプにアクセスしおください。
>
> --
> --
> KOHATA Yoshifumi

Yoshifumi KOHATA

unread,
Feb 9, 2010, 8:26:54 PM2/9/10
to google-app-...@googlegroups.com
問題が解決したずのこず、良かったですね。

> 無芖しおよいメッセヌゞずのこずで、安心いたしたした。
たぁ、ケヌスバむケヌスずいうこずで (^^


2010幎2月10日9:40 tagawa <douno...@gmail.com>:
このグルヌプから退䌚するには、google-app-engine...@googlegroups.com にメヌルを送信しおください。
詳现に぀いおは、http://groups.google.com/group/google-app-engine-japan?hl=ja からこのグルヌプにアクセスしおください。




--
--
KOHATA Yoshifumi

Ohgochi

unread,
Feb 10, 2010, 11:13:12 PM2/10/10
to Google-App-Engine-Japan
GAE/Jでクッキヌ䜿甚ですが、埀埩の際に100%出おいる状況です。
今のずころ問題になっおはいないので、100%無芖しおいたす。
ただ気持ちは非垞っに悪いです。
ロヌカル及びクラりド双方のhttpサヌバヌの実装問題ず思っおいたすので、おそらく手の打ちようはないんだろうず理解しおおりたすが。
Reply all
Reply to author
Forward
0 new messages