Policy:User-Agent policy/ja: Difference between revisions

From Wikimedia Foundation Governance Wiki
Content deleted Content added
FuzzyBot (talk | contribs)
Updating to match new version of source page
FuzzyBot (talk | contribs)
Updating to match new version of source page
Line 12: Line 12:
:''現在、このサーバーには技術的な問題が発生しています。一時的な現象であり、早急に対応する必要があります。数分後に再度、ご利用ください。
:''現在、このサーバーには技術的な問題が発生しています。一時的な現象であり、早急に対応する必要があります。数分後に再度、ご利用ください。


<div lang="en" dir="ltr" class="mw-content-ltr">
This change is most likely to affect scripts (bots) accessing Wikimedia websites such as Wikipedia automatically, via api.php or otherwise, and command line programs.<ref>[//www.mediawiki.org/w/index.php?title=API:FAQ#do_I_get_HTTP_403_errors.3F API:FAQ - MediaWiki]</ref> If you run a bot, please send a User-Agent header identifying the bot with an identifier that isn't going to be confused with many other bots, and supplying some way of contacting you (e.g. a userpage on the local wiki, a userpage on a related wiki using interwiki linking syntax, a URI for a relevant external website, or an email address), e.g.:
This change is most likely to affect scripts (bots) accessing Wikimedia websites such as Wikipedia automatically, via api.php or otherwise, and command line programs.<ref>[//www.mediawiki.org/w/index.php?title=API:FAQ#do_I_get_HTTP_403_errors.3F API:FAQ - MediaWiki]</ref> If you run a bot, please send a User-Agent header identifying the bot with an identifier that isn't going to be confused with many other bots, and supplying some way of contacting you (e.g. a userpage on the local wiki, a userpage on a related wiki using interwiki linking syntax, a URI for a relevant external website, or an email address), e.g.:
</div>
<pre>
<pre>
User-Agent: CoolToolName/0.0 (https://example.org/CoolTool/; CoolTool@example.org) UsedBaseLibrary/0.0
User-Agent: CoolToolName/0.0 (https://example.org/cool-tool/; cool-tool@example.org) used-base-library/0.0
</pre>
</pre>


The generic format is <code><client name>/<version> (<contact information>) <library/framework name>/<version> [<library name>/<version> ...]</code>. Parts that are not applicable can be omitted.
The generic format is <code><client name>/<version> (<contact information>) <library/framework name>/<version> [<library name>/<version> ...]</code>. Parts that are not applicable can be omitted.


<div lang="en" dir="ltr" class="mw-content-ltr">
If you run an automated agent, please consider following the Internet-wide convention of including the string "bot" in the User-Agent string, in any combination of lowercase or uppercase letters. This is recognized by Wikimedia's systems, and used to classify traffic and provide more accurate statistics.
If you run an automated agent, please consider following the Internet-wide convention of including the string "bot" in the User-Agent string, in any combination of lowercase or uppercase letters. This is recognized by Wikimedia's systems, and used to classify traffic and provide more accurate statistics.
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
Do not copy a browser's user agent for your bot, as bot-like behavior with a browser's user agent will be assumed malicious.<ref>[//lists.wikimedia.org/pipermail/wikitech-l/2010-February/046783.html [Wikitech-l&#93; User-Agent:]</ref> Do not use generic agents such as "curl", "lwp", "Python-urllib", and so on. For large frameworks like pywikibot, there are so many users that just "pywikibot" is likely to be somewhat vague. Including detail about the specific task/script/etc would be a good idea, even if that detail is opaque to anyone besides the operator.<ref>{{cite web|url=http://lists.wikimedia.org/pipermail/mediawiki-api/2014-July/003308.html|title=Clarification on what is needed for "identifying the bot" in bot user-agent?|publisher=Mediawiki-api|author=Anomie|date=31 July 2014}}</ref>
Do not copy a browser's user agent for your bot, as bot-like behavior with a browser's user agent will be assumed malicious.<ref>[//lists.wikimedia.org/pipermail/wikitech-l/2010-February/046783.html [Wikitech-l&#93; User-Agent:]</ref> Do not use generic agents such as "curl", "lwp", "Python-urllib", and so on. For large frameworks like pywikibot, there are so many users that just "pywikibot" is likely to be somewhat vague. Including detail about the specific task/script/etc would be a good idea, even if that detail is opaque to anyone besides the operator.<ref>{{cite web|url=http://lists.wikimedia.org/pipermail/mediawiki-api/2014-July/003308.html|title=Clarification on what is needed for "identifying the bot" in bot user-agent?|publisher=Mediawiki-api|author=Anomie|date=31 July 2014}}</ref>
</div>


<div class="mw-translate-fuzzy">
<div class="mw-translate-fuzzy">
詳細情報は[[mw:API:Quick start guide#Identifying your client|MediaWiki API 説明文書]]をご参照ください<ref>ユーザーエージェント設定に関する ([[mw:API:Quick_start_guide#Identifying_your_client|その他の例]]の中の) 一例として、 PHP で cURL ハンドルが<code>$ch</code>:<source lang="php">curl_setopt($ch, CURLOPT_USERAGENT ,'CoolToolName/0.0 (https://example.org/CoolTool/; CoolTool@example.org) UsedBaseLibrary/0.0');</source>の場合。この方法を[http://php.net/manual/en/function.curl-setopt.php 使うことができます]。</ref>。
詳細情報は[[mw:API:Quick start guide#Identifying your client|MediaWiki API 説明文書]]をご参照ください<ref>ユーザーエージェント設定に関する ([[mw:API:Quick_start_guide#Identifying_your_client|その他の例]]の中の) 一例として、 PHP で cURL ハンドルが<code>$ch</code>:<syntaxhighlight lang="php">curl_setopt($ch, CURLOPT_USERAGENT ,'CoolToolName/0.0 (https://example.org/cool-tool/; cool-tool@example.org) used-base-library/0.0');</syntaxhighlight>の場合。この方法を[http://php.net/manual/en/function.curl-setopt.php 使うことができます]。</ref>。
</div>
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
Web browsers generally send a User-Agent string automatically; if you encounter the above error, please refer to your browser's manual to find out how to set the User-Agent string. Note that some plugins or proxies for privacy enhancement may suppress this header. However, for anonymous surfing, it is recommended to send a generic User-Agent string, instead of suppressing it or sending an empty string. Note that other features are much more likely to identify you to a website — if you are interested in protecting your privacy, visit the [https://panopticlick.eff.org/ Panopticlick project].
Web browsers generally send a User-Agent string automatically; if you encounter the above error, please refer to your browser's manual to find out how to set the User-Agent string. Note that some plugins or proxies for privacy enhancement may suppress this header. However, for anonymous surfing, it is recommended to send a generic User-Agent string, instead of suppressing it or sending an empty string. Note that other features are much more likely to identify you to a website — if you are interested in protecting your privacy, visit the [https://panopticlick.eff.org/ Panopticlick project].
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
Browser-based applications written in Flash or JavaScript are typically forced to send the same User-Agent header as the browser that hosts them. This is not a violation of policy, however such applications are encouraged to include the <code>Api-User-Agent</code> header to supply an appropriate agent.
Browser-based applications written in Flash or JavaScript are typically forced to send the same User-Agent header as the browser that hosts them. This is not a violation of policy, however such applications are encouraged to include the <code>Api-User-Agent</code> header to supply an appropriate agent.
</div>


<div class="mw-translate-fuzzy">
<div class="mw-translate-fuzzy">

Revision as of 23:48, 11 October 2020

ウィキメディアのサイト群では2010年2月15日付でリクエストごとにHTTP ユーザーエージェント ヘッダ が必要になりました。技術職員による運用上の決定であり、技術メーリングリストで発表と議論をしています[1][2]。根本原理としてユーザーエージェントのストリングを送信しないクライアントとは、そのほとんどが悪意のあるスクリプトでサーバに過剰な負担をかけ、プロジェクトの益にならないものです。ただしユーザーエージェントのストリングの非説明的既定値、すなわち Perl の libwww の使用分なども、ウィキメディアのウェブサイト (もしくは api.php などウェブサイトの一部) を利用するとブロックされる場合があります。

ユーザーエージェント (ブラウザもしくはスクリプト) からユーザーエージェント ヘッダを送信しない場合、次のようなエラー警告が表示される場合があります。

スクリプトは有効な情報を含むユーザーエージェントのストリングとして連絡先情報を使用するべきで、未使用の場合は予告なく IP ブロックの対象となる場合があります。

ユーザーエージェントから送信されたユーザーエージェント ヘッダがブラックリストに含まれる場合 (有益か無益かに関わらず「lwp」で始まるユーザーエージェント ストリングなど) は、 次のような状態を説明していない (偽の) エラー警告が表示される場合があります。

現在、このサーバーには技術的な問題が発生しています。一時的な現象であり、早急に対応する必要があります。数分後に再度、ご利用ください。

This change is most likely to affect scripts (bots) accessing Wikimedia websites such as Wikipedia automatically, via api.php or otherwise, and command line programs.[3] If you run a bot, please send a User-Agent header identifying the bot with an identifier that isn't going to be confused with many other bots, and supplying some way of contacting you (e.g. a userpage on the local wiki, a userpage on a related wiki using interwiki linking syntax, a URI for a relevant external website, or an email address), e.g.:

User-Agent: CoolToolName/0.0 (https://example.org/cool-tool/; cool-tool@example.org) used-base-library/0.0

The generic format is <client name>/<version> (<contact information>) <library/framework name>/<version> [<library name>/<version> ...]. Parts that are not applicable can be omitted.

If you run an automated agent, please consider following the Internet-wide convention of including the string "bot" in the User-Agent string, in any combination of lowercase or uppercase letters. This is recognized by Wikimedia's systems, and used to classify traffic and provide more accurate statistics.

Do not copy a browser's user agent for your bot, as bot-like behavior with a browser's user agent will be assumed malicious.[4] Do not use generic agents such as "curl", "lwp", "Python-urllib", and so on. For large frameworks like pywikibot, there are so many users that just "pywikibot" is likely to be somewhat vague. Including detail about the specific task/script/etc would be a good idea, even if that detail is opaque to anyone besides the operator.[5]

詳細情報はMediaWiki API 説明文書をご参照ください[6]

Web browsers generally send a User-Agent string automatically; if you encounter the above error, please refer to your browser's manual to find out how to set the User-Agent string. Note that some plugins or proxies for privacy enhancement may suppress this header. However, for anonymous surfing, it is recommended to send a generic User-Agent string, instead of suppressing it or sending an empty string. Note that other features are much more likely to identify you to a website — if you are interested in protecting your privacy, visit the Panopticlick project.

Browser-based applications written in Flash or JavaScript are typically forced to send the same User-Agent header as the browser that hosts them. This is not a violation of policy, however such applications are encouraged to include the Api-User-Agent header to supply an appropriate agent.

2015年現在、技術的に強制されたユーザーエージェント必須条件はないものの、必要に応じて個別の事例で強制される場合があります。

[7]

注記

  1. The Wikitech-l 2010年2月話題ごとの過去ログ
  2. User-Agent: | Wikipedia | Wikitech
  3. API:FAQ - MediaWiki
  4. [Wikitech-l] User-Agent:
  5. Anomie (31 July 2014). "Clarification on what is needed for "identifying the bot" in bot user-agent?". Mediawiki-api. 
  6. ユーザーエージェント設定に関する (その他の例の中の) 一例として、 PHP で cURL ハンドルが$ch:
    curl_setopt($ch, CURLOPT_USERAGENT ,'CoolToolName/0.0 (https://example.org/cool-tool/; cool-tool@example.org) used-base-library/0.0');
    
    の場合。この方法を使うことができます
  7. gmane.science.linguistics.wikipedia.technical/83870 (deadlink)