argra****@users*****
argra****@users*****
2011年 7月 6日 (水) 03:51:28 JST
Index: docs/modules/libwww-perl-5.813/lwptut.pod diff -u docs/modules/libwww-perl-5.813/lwptut.pod:1.4 docs/modules/libwww-perl-5.813/lwptut.pod:1.5 --- docs/modules/libwww-perl-5.813/lwptut.pod:1.4 Thu May 26 01:07:50 2011 +++ docs/modules/libwww-perl-5.813/lwptut.pod Wed Jul 6 03:51:27 2011 @@ -135,7 +135,7 @@ LWP::Simple にはその他にも便利な関数があります; URL に HEAD リクエストを 送る関数 (リンクのチェックや、ある URL の最終更新日時の取得に便利です) や、 URL の内容をローカルファイルに保存/ミラーするための二つの関数などです。 -完全な詳細については L<the LWP::Simple documentation|LWP::Simple> 、 +完全な詳細については L<LWP::Simple の文書|LWP::Simple> 、 更なる例については I<Perl & LWP> の第 2 章を参照してください。 =for comment @@ -469,7 +469,7 @@ =end original 上述のように C<< 'autosave' => 1 >> 行を追加することもできますが、 -書き込み時に Netscape がディ楠に書き戻そうとしたクッキーの一部を +書き込み時に Netscape がディスクに書き戻そうとしたクッキーの一部を 破棄するかどうかは不確定です。 =for comment @@ -570,12 +570,11 @@ =end original -Some HTML forms convey their form data not by sending the data -in an HTTP POST request, but by making a normal GET request with -the data stuck on the end of the URL. For example, if you went to -C<imdb.com> and ran a search on "Blade Runner", the URL you'd see -in your browser window would be: -(TBT) +HTML フォームには、フォームデータを送るのに HTTP POST リクエストで +送るのではなく、URL の末尾にデータを付けて 通常の GET リクエストで +送るものもあります。 +例えば、C<imdb.com> で "Blade Runner" を検索すると、ブラウザウィンドウに +表示される URL は: http://us.imdb.com/Tsearch?title=Blade%20Runner&restrict=Movies+and+TV @@ -629,16 +628,15 @@ =end original -The URI class that we just mentioned above provides all sorts of methods -for accessing and modifying parts of URLs (such as asking sort of URL it -is with C<< $url->scheme >>, and asking what host it refers to with C<< -$url->host >>, and so on, as described in L<the docs for the URI -class|URI>. However, the methods of most immediate interest -are the C<query_form> method seen above, and now the C<new_abs> method -for taking a probably-relative URL string (like "../foo.html") and getting -back an absolute URL (like "http://www.perl.com/stuff/foo.html"), as -shown here: -(TBT) +先に触れた URI クラスは、URL の一部にアクセスしたり修正したりする +あらゆる種類のメソッドを提供しています +(C<< $url->scheme >> で URL の種類を調べたり、C<< $url->host >> で +参照しているホストを調べたり、などです; これらは L<URI クラスの文書|URI> に +記述されています)。 +しかし、もっとも直接重要なメソッドは上述の C<query_form> と、 +以下のように ("../foo.html" のような) おそらく相対の URL を取って +("http://www.perl.com/stuff/foo.html" のような)絶対 URL を返す +C<new_abs> メソッドです: use URI; $abs = URI->new_abs($maybe_relative, $base); @@ -708,12 +706,9 @@ =end original -(L<HTTP::Message|HTTP::Message> の C<< $response->base >> メソッドは -method from -is for returning what URL -should be used for resolving relative URLs -- it's usually just -the same as the URL that you requested.) -(TBT) +(L<HTTP::Message|HTTP::Message> の C<< $response->base >> メソッドは、 +相対 URL を解決するためにどの URL が使われるかを返されます -- これは普通 +要求した URL と同じです。) =begin original @@ -721,8 +716,7 @@ =end original -That program then emits nicely absolute URLs: -(TBT) +このプログラムはいい感じに絶対 URL を出力します: http://www.cpan.org/MIRRORING.FROM http://www.cpan.org/RECENT @@ -738,8 +732,8 @@ =end original -See chapter 4 of I<Perl & LWP> for a longer discussion of URI objects. -(TBT) +URI オブジェクトに関するより長い説明については I<Perl & LWP> の第 4 章を +参照してください。 =begin original @@ -750,11 +744,9 @@ =end original -Of course, using a regexp to match hrefs is a bit simplistic, and for -more robust programs, you'll probably want to use an HTML-parsing module -like L<HTML::LinkExtor> or L<HTML::TokeParser> or even maybe -L<HTML::TreeBuilder>. -(TBT) +もちろん、href のマッチングに正規表現を使うのは少し単純化しすぎです; +より堅牢なプログラムのためには、L<HTML::LinkExtor>, L<HTML::TokeParser>, +L<HTML::TreeBuilder> のような HTML パースモジュールを使いたいでしょう。 =for comment ########################################################################## @@ -817,11 +809,9 @@ これは、HTTP と gopher 以外のプロトコルを話さないようにオブジェクトに 設定します。 -If it tries accessing any other kind of URL (like an "ftp:" -or "mailto:" or "news:" URL), then it won't actually try connecting, but -instead will immediately return an error code 500, with a message like -"Access to 'ftp' URIs has been disabled". -(TBT) +("ftp:" や "mailto:" や "news:" URL のような)その他の種類の URL で +アクセスしようとすると、実際に接続しようとはせず、直ちにエラーコード 500 と +"Access to 'ftp' URIs has been disabled" のようなメッセージで返ります。 =item * @@ -865,12 +855,11 @@ =end original -This changes how the browser object will identify itself in -the default "User-Agent" line is its HTTP requests. By default, -it'll send "libwww-perl/I<versionnumber>", like -"libwww-perl/5.65". You can change that to something more descriptive -like this: -(TBT) +これはブラウザオブジェクトが HTTP リクエストのデフォルトの +"User-Agent" 行で何と名乗るかを変更します。 +デフォルトでは、"libwww-perl/5.65" のように、 +"libwww-perl/I<バージョン番号>" を送ります。 +以下のようなもっと説明的なものに変更できます: $browser->agent( 'SomeName/3.14 (conta****@robot*****)' ); @@ -902,10 +891,9 @@ =end original -This tells this browser to obey redirection responses to POST requests -(like most modern interactive browsers), even though the HTTP RFC says -that should not normally be done. -(TBT) +これは、このブラウザは POST リクエストに対するリダイレクト要求を +(最近のほとんどの対話的ブラウザと同様) 拒否することを示します +(ただし HTTP の RFC は普通は拒否するべきではないとしています); =back @@ -916,9 +904,8 @@ =end original -For more options and information, see L<the full documentation for -LWP::UserAgent|LWP::UserAgent>. -(TBT) +さらなるオプションと情報については、L<LWP::UserAgent の完全な +文書|LWP::UserAgent> を参照してください。 =for comment ########################################################################## @@ -935,10 +922,9 @@ =end original -If you want to make sure that your LWP-based program respects F<robots.txt> -files and doesn't make too many requests too fast, you can use the LWP::RobotUA -class instead of the LWP::UserAgent class. -(TBT) +あなたの LWP ベースのプログラムが F<robots.txt> を尊重して、一度に多くの +リクエストを送らないようにするには、LWP::UserAgent クラスの代わりに +LWP::RobotUA クラスが使えます。 =begin original @@ -976,11 +962,11 @@ =end original -If the F<robots.txt> on C<$url>'s server forbids you from accessing -C<$url>, then the C<$browser> object (assuming it's of class LWP::RobotUA) -won't actually request it, but instead will give you back (in C<$response>) a 403 error -with a message "Forbidden by robots.txt". That is, if you have this line: -(TBT) +C<$url> のサーバの F<robots.txt> が C<$url> へのアクセスを禁止しているなら、 +C<$browser> オブジェクト (LWP::RobotUA クラスと仮定しています) は実際に +リクエストを送ることはせず、代わりに (C<$response> で) +"Forbidden by robots.txt" というメッセージ付きで 403 エラーを返します。 +つまり、以下のようにすると: die "$url -- ", $response->status_line, "\nAborted" unless $response->is_success; @@ -991,8 +977,7 @@ =end original -then the program would die with an error message like this: -(TBT) +このプログラムは以下のようなエラーメッセージを出力して die します: http://whatever.site.int/pith/x.html -- 403 Forbidden by robots.txt Abort****@whate***** line 1234 @@ -1009,12 +994,11 @@ =end original -If this C<$browser> object sees that the last time it talked to -C<$url>'s server was too recently, then it will pause (via C<sleep>) to -avoid making too many requests too often. How long it will pause for, is -by default one minute -- but you can control it with the C<< -$browser->delay( I<minutes> ) >> attribute. -(TBT) +この C<$browser> オブジェクトが、最後に C<$url> のサーバと通信したのが +最近過ぎる場合、あまり頻繁にリクエストを送りすぎないように、(C<sleep> を +使って) 一時停止します。 +一時停止する時間は、デフォルトでは 1 分です -- しかし +C<< $browser->delay( I<minutes> ) >> 属性で制御できます。 =begin original @@ -1022,8 +1006,7 @@ =end original -For example, this code: -(TBT) +例えば、このコードは: $browser->delay( 7/60 ); @@ -1034,9 +1017,8 @@ =end original -...means that this browser will pause when it needs to avoid talking to -any given server more than once every 7 seconds. -(TBT) +このブラウザは、どのサーバに対しても 7 秒に 1 回以上接続しないように +するために一時停止することを意味します。 =back @@ -1047,8 +1029,8 @@ =end original -さらなるオプションと情報については、L<the full documentation for -LWP::RobotUA|LWP::RobotUA> を参照してください。 +さらなるオプションと情報については、L<LWP::RobotUA の完全な +文書|LWP::RobotUA> を参照してください。 =for comment ########################################################################## @@ -1066,11 +1048,10 @@ =end original -In some cases, you will want to (or will have to) use proxies for -accessing certain sites and/or using certain protocols. This is most -commonly the case when your LWP program is running (or could be running) -on a machine that is behind a firewall. -(TBT) +場合によっては、ある種のサイトへのアクセスやある種のプロトコルの使用のために +プロキシを使用したい(あるいは使用する必要がある)ことがあります。 +これは、LWP を使ったプログラムがファイアウォールの背後のマシンで実行される +(あるいは実行されるかもしれない)時にもっとも一般的な状況です。 =begin original @@ -1081,11 +1062,10 @@ =end original -To make a browser object use proxies that are defined in the usual -environment variables (C<HTTP_PROXY>, etc.), just call the C<env_proxy> -on a user-agent object before you go making any requests on it. -Specifically: -(TBT) +ブラウザオブジェクトが通常の環境変数(C<HTTP_PROXY> など)で定義している +プロキシを使うようにするには、単にリクエストの前にユーザーエージェント +オブジェクトの C<env_proxy> を呼び出すだけです。 +具体的には: use LWP::UserAgent; my $browser = LWP::UserAgent->new; @@ -1101,10 +1081,9 @@ =end original -For more information on proxy parameters, see L<the LWP::UserAgent -documentation|LWP::UserAgent>, specifically the C<proxy>, C<env_proxy>, -and C<no_proxy> methods. -(TBT) +プロキシ引数に関するさらなる情報については、L<LWP::UserAgent の +文書|LWP::UserAgent> の、特に C<proxy>, C<env_proxy>, +C<no_proxy> メソッドを参照してください。 =for comment ########################################################################## @@ -1124,13 +1103,11 @@ =end original -Many web sites restrict access to documents by using "HTTP -Authentication". This isn't just any form of "enter your password" -restriction, but is a specific mechanism where the HTTP server sends the -browser an HTTP code that says "That document is part of a protected -'realm', and you can access it only if you re-request it and add some -special authorization headers to your request". -(TBT) +多くのウェブサイトは文書へのアクセスを "HTTP 認証" を使って制限しています。 +これは単なる "パスワードを入力してください" 形式の制限ではなく、 +HTTP サーバがブラウザに「この文書は保護された「レルム」の一部であり、 +リクエストに専用の認証ヘッダを追加して再リクエストした場合にのみ +アクセスできます」という意味の HTTP コードを返すという、専用の機構です。 =begin original @@ -1142,12 +1119,12 @@ =end original -For example, the Unicode.org admins stop email-harvesting bots from -harvesting the contents of their mailing list archives, by protecting -them with HTTP Authentication, and then publicly stating the username -and password (at C<http://www.unicode.org/mail-arch/>) -- namely -username "unicode-ml" and password "unicode". -(TBT) +例えば、Unicode.org の管理者は、メーリングリストアーカイブを HTTP 認証で +保護して、このユーザー名とパスワードを +(C<http://www.unicode.org/mail-arch/> で)公にする +(ユーザー名 "unicode-ml" パスワード "unicode") ことで、 +電子メールアドレス収集ボットがアーカイブからアドレスを収集するのを +阻止しています。 =begin original @@ -1217,12 +1194,11 @@ =end original -...because the C<$browser> doesn't know any the username and password -for that realm ("Unicode-MailList-Archives") at that host -("www.unicode.org"). The simplest way to let the browser know about this -is to use the C<credentials> method to let it know about a username and -password that it can try using for that realm at that host. The syntax is: -(TBT) +なぜなら C<$browser> はこのホスト ("www.unicode.org") のこのレルム +("Unicode-MailList-Archives") のユーザー名とパスワードを知らないからです。 +ブラウザにこれを知らせるもっとも簡単な方法は、このホストのこのレルムに使う +ユーザーとパスワードを知らせる C<credentials> メソッドを使うことです。 +文法は: $browser->credentials( 'servername:portnumber', @@ -1238,10 +1214,9 @@ =end original -In most cases, the port number is 80, the default TCP/IP port for HTTP; and -you usually call the C<credentials> method before you make any requests. -For example: -(TBT) +ほとんどの場合、ポート番号は HTTP のデフォルト TCP/IP ポートである 80 です; +そして普通はリクエストの前に C<credentials> メソッドを呼び出します。 +例えば: $browser->credentials( 'reports.mybazouki.com:80', @@ -1256,9 +1231,8 @@ =end original -So if we add the following to the program above, right after the C<< -$browser = LWP::UserAgent->new; >> line... -(TBT) +そして、上述のプログラムに以下のものを加えるなら、C<< +$browser = LWP::UserAgent->new; >> 行の直後にします… $browser->credentials( # add this to our $browser 's "key ring" 'www.unicode.org:80', @@ -1273,9 +1247,7 @@ =end original -...then when we run it, the request succeeds, instead of causing the -C<die> to be called. -(TBT) +それから実行すると、リクエストは C<die> を引き起こさずに成功します。 =for comment ########################################################################## @@ -1292,10 +1264,9 @@ =end original -When you access an HTTPS URL, it'll work for you just like an HTTP URL -would -- if your LWP installation has HTTPS support (via an appropriate -Secure Sockets Layer library). For example: -(TBT) +HTTPS の URL にアクセスすると、(LWP インストール時に (適切な SSL +ライブラリを使って) HTTPS 対応しているなら) HTTP の URL と同様に動作します。 +例えば: use LWP; my $url = 'https://www.paypal.com/'; # Yes, HTTPS! @@ -1313,9 +1284,8 @@ =end original -If your LWP installation doesn't have HTTPS support set up, then the -response will be unsuccessful, and you'll get this error message: -(TBT) +HTTPS 対応なしで LWP がインストールされている場合、レスポンスは失敗し、 +以下のようなエラーメッセージが発生します: Error at https://www.paypal.com/ 501 Protocol scheme 'https' is not supported @@ -1329,10 +1299,8 @@ =end original -If your LWP installation I<does> have HTTPS support installed, then the -response should be successful, and you should be able to consult -C<$response> just like with any normal HTTP response. -(TBT) +LWP インストール時に HTTPS 対応されて I<いる> 場合、レスポンスは成功し、 +通常の HTTP レスポンスと同様の C<$response> が使えます。 =begin original @@ -1342,10 +1310,8 @@ =end original -For information about installing HTTPS support for your LWP -installation, see the helpful F<README.SSL> file that comes in the -libwww-perl distribution. -(TBT) +LWP インストール時に HTTPS 対応にするための情報については、libwww-perl 配布に +同梱されている F<README.SSL> ファイルを参照してください。 =for comment ########################################################################## @@ -1365,13 +1331,12 @@ =end original -When you're requesting a large (or at least potentially large) document, -a problem with the normal way of using the request methods (like C<< -$response = $browser->get($url) >>) is that the response object in -memory will have to hold the whole document -- I<in memory>. If the -response is a thirty megabyte file, this is likely to be quite an -imposition on this process's memory usage. -(TBT) +大きな (または少なくとも大きい可能性がある) 文書をリクエストするとき、 +(C<< $response = $browser->get($url) >> のような) リクエストメソッドを使った +通常の方法の問題点は、メモリ上のレスポンスオブジェクトが文書全体を保持する +必要があることです -- I<メモリ上の>。 +もしレスポンスが 30 メガバイトのファイルなら、おそらくプロセスのメモリ消費に +とって負担となるでしょう。 =begin original @@ -1380,9 +1345,9 @@ =end original -A notable alternative is to have LWP save the content to a file on disk, -instead of saving it up in memory. This is the syntax to use: -(TBT) +注目するべき代替案は、LWP がメモリ上ではなく、ディスク上のファイルに内容を +保存するようにすることです。 +これが使用するための文法です: $response = $ua->get($url, ':content_file' => $filespec, @@ -1394,8 +1359,7 @@ =end original -For example, -(TBT) +例えば、 $response = $ua->get('http://search.cpan.org/', ':content_file' => '/tmp/sco.html' @@ -1409,10 +1373,8 @@ =end original -When you use this C<:content_file> option, the C<$response> will have -all the normal header lines, but C<< $response->content >> will be -empty. -(TBT) +C<:content_file> オプションを使うとき、C<$response> には通常のヘッダ行 +全てが含まれていますが、C<< $response->content >> は空です。 =begin original @@ -1423,11 +1385,10 @@ =end original -Note that this ":content_file" option isn't supported under older -versions of LWP, so you should consider adding C<use LWP 5.66;> to check -the LWP version, if you think your program might run on systems with -older versions. -(TBT) +この ":content_file" オプションは古いバージョンの LWP では +対応していないので、もし古いバージョンのシステムでも実行されるかもしれないと +考えるなら、LWP バージョンをチェックするために C<use LWP 5.66;> を +追加することを考慮するべきかもしれません。 =begin original @@ -1436,9 +1397,8 @@ =end original -If you need to be compatible with older LWP versions, then use -this syntax, which does the same thing: -(TBT) +もし古い LWP バージョンとの互換性が必要なら、同じことをする以下の構文を +使ってください: use HTTP::Request::Common; $response = $ua->request( GET($url), $filespec );