2012年1月 6日

[tDiary-users-talk: 0489] Re:ruby mechanizeで日記更新したい

三輪です

2012年1月6日19:52 KADO Masanori <kdmsnr@xxxxx>:
>> [環境]
> [snip]
>> mechanize 1.0.0
>
> ↑とありますが、

>
>> /usr/pkg/lib/ruby/gems/1.8/gems/mechanize-2.1/lib/mechanize/http/agent.rb:303:in
>> `fetch': 500 => Net::HTTPInternalServerError
>> (Mechanize::ResponseCodeError)
>> from /usr/pkg/lib/ruby/gems/1.8/gems/mechanize-2.1/lib/mechanize/http/agent.rb:655:in
>> `response_authenticate'
>
> 2.1でエラーが出ているのは関係ないですか?
> # 2.1 は "requires Ruby version >= 1.8.7." でした。

ごめんなさい。環境を間違ました orz
スクリプトを実行するホストと、tdiary を実行しているホスト(つまりサーバー)があるので
双方の環境が混ざりました。

最初のメールに書いた「環境」はサーバーの環境でした。
(サーバーには mechanize 1.0.0 が入ってます )

「現象」に書いたログはスクリプトを実行するホストの環境でした。
(スクリプトを実行するホストには mechanize 2.1 が入ってます )

整理します。


スクリプトを実行するホストの環境はこうです。

NetBSD 5.99.58

% ruby --version
ruby 1.8.7 (2011-02-18 patchlevel 334) [i386-netbsdelf]

% gem list

*** LOCAL GEMS ***

domain_name (0.5.1)
mechanize (2.1)
net-http-digest_auth (1.2)
net-http-persistent (2.3.3)
nokogiri (1.5.0)
ntlm-http (0.1.1)
tmail (1.2.7.1)
unf (0.0.4)
unf_ext (0.0.4)
webrobots (0.0.12)


サーバーの環境はこうです。

NetBSD 5.1
tDiary version 3.1.0

% ruby --version
ruby 1.8.7 (2011-02-18 patchlevel 334) [i386-netbsdelf]

% gem list

*** LOCAL GEMS ***

gruff (0.3.6)
hoe (2.8.0)
mechanize (1.0.0)
nokogiri (1.4.4)
rake (0.8.7)
rmagick (2.13.1)
tmail (1.2.7.1)


環境が異なっている必要性はとくにありません。
環境整備をサボっているだけです ('A`)

そして、スクリプトを実行するホストでスクリプトを実行すると、
最初のメールに書いた「現象」のログが出力されます。
(再掲します)

[スクリプトのログ]
% ./tdwrite.rb
I, [2012-01-06T20:03:49.960821 #3905] INFO -- : Net::HTTP::Get:
/~rin/diary/update.rb
I, [2012-01-06T20:03:50.032033 #3905] INFO -- : status:
Net::HTTPUnauthorized 1.1 401 Authorization Required
I, [2012-01-06T20:03:50.041733 #3905] INFO -- : Net::HTTP::Get:
/~rin/diary/update.rb
I, [2012-01-06T20:03:50.277806 #3905] INFO -- : status: Net::HTTPOK 1.1 200 OK
I, [2012-01-06T20:03:50.349072 #3905] INFO -- : form encoding: ISO-8859-1
I, [2012-01-06T20:03:50.355784 #3905] INFO -- : Net::HTTP::Post:
/~rin/diary/update.rb
I, [2012-01-06T20:03:50.395595 #3905] INFO -- : status:
Net::HTTPUnauthorized 1.1 401 Authorization Required
I, [2012-01-06T20:03:50.419704 #3905] INFO -- : Net::HTTP::Post:
/~rin/diary/update.rb
I, [2012-01-06T20:03:50.516790 #3905] INFO -- : status:
Net::HTTPInternalServerError 1.1 500 Internal Server Error
/usr/pkg/lib/ruby/gems/1.8/gems/mechanize-2.1/lib/mechanize/http/agent.rb:303:in
`fetch': 500 => Net::HTTPInternalServerError
(Mechanize::ResponseCodeError)
from /usr/pkg/lib/ruby/gems/1.8/gems/mechanize-2.1/lib/mechanize/http/agent.rb:655:in
`response_authenticate'
from /usr/pkg/lib/ruby/gems/1.8/gems/mechanize-2.1/lib/mechanize/http/agent.rb:300:in
`fetch'
from /usr/pkg/lib/ruby/gems/1.8/gems/mechanize-2.1/lib/mechanize.rb:1036:in
`post_form'
from /usr/pkg/lib/ruby/gems/1.8/gems/mechanize-2.1/lib/mechanize.rb:426:in
`submit'
from /usr/pkg/lib/ruby/gems/1.8/gems/mechanize-2.1/lib/mechanize/form.rb:178:in
`submit'
from ./tdwrite.rb:21:in `main'
from (eval):23:in `form_with'
from ./tdwrite.rb:19:in `main'
from ./tdwrite.rb:26

[サーバーのログ]
access_log

218.45.17.166 - - [06/Jan/2012:20:03:48 +0900] "GET
/~rin/diary/update.rb HTTP/1.1" 401 290
218.45.17.166 - diary [06/Jan/2012:20:03:48 +0900] "GET
/~rin/diary/update.rb HTTP/1.1" 200 6105
218.45.17.166 - - [06/Jan/2012:20:03:48 +0900] "POST
/~rin/diary/update.rb HTTP/1.1" 401 290
218.45.17.166 - diary [06/Jan/2012:20:03:48 +0900] "POST
/~rin/diary/update.rb HTTP/1.1" 500 446


error_log にはとくにそれらしいログがありません。

--
みわ

_______________________________________________
tDiary-users-talk mailing list
tDiary-users-talk@xxxxx
http://lists.sourceforge.jp/mailman/listinfo/tdiary-users-talk


投稿者 xml-rpc : 2012年1月 6日 20:11
役に立ちました?:
過去のフィードバック 平均:(0) 総合:(0) 投票回数:(0)
本記事へのTrackback: http://hoop.euqset.org/blog/mt-tb2006.cgi/108061
トラックバック
コメント
コメントする




画像の中に見える文字を入力してください。