「Wget」の版間の差分
(→ウェブサイトの完全なアーカイブを作成: 同期) |
|||
(6人の利用者による、間の18版が非表示) | |||
1行目: | 1行目: | ||
− | [[Category: |
+ | [[Category:ダウンロードユーティリティ]] |
− | [[ |
+ | [[Category:GNU]] |
[[en:Wget]] |
[[en:Wget]] |
||
[[es:Wget]] |
[[es:Wget]] |
||
+ | [[pl:Wget]] |
||
− | GNU Wget は広く使われているインターネットプロトコルである HTTP, HTTPS, FTP を使用してファイルを取得するためのフリーソフトウェアパッケージです。インタラクティブなコマンドラインツールではないため、スクリプトや cron ジョブ、X-Windows のないターミナルなどから簡単に呼び出すことができます [http://www.gnu.org/software/wget/]。 |
||
+ | [https://www.gnu.org/software/wget/ GNU Wget] は広く使われているインターネットプロトコルである [[HTTP]], HTTPS, [[FTP]], FTPS (1.18 以降) を使用してファイルを取得するためのフリーソフトウェアパッケージです。非対話型のコマンドラインツールなので、スクリプトから簡単に呼び出すことができます。 |
||
==インストール== |
==インストール== |
||
− | + | [[pacman]] を使って {{Pkg|wget}} パッケージを [[インストール]] してください。[[AUR]] に [[git]] バージョンが存在します: {{AUR|wget-git}} |
|
==設定== |
==設定== |
||
− | 設定は {{ic|/etc/wgetrc}} で行います。デフォルトの設定ファイルはドキュメントがよく整理されているだけでなく、変更する必要は基本的にありません。複雑なオプションについては man ページを見て下さい。 |
+ | 設定は {{ic|/etc/wgetrc}} で行います。デフォルトの設定ファイルはドキュメントがよく整理されているだけでなく、変更する必要は基本的にありません。複雑なオプションについては {{man|1|wget|OPTIONS}} ページを見て下さい。 |
===FTP の自動化=== |
===FTP の自動化=== |
||
17行目: | 18行目: | ||
上記の例では、Wget は 3.3 GB のファイルを 74.4MB/s の速度で転送しています。 |
上記の例では、Wget は 3.3 GB のファイルを 74.4MB/s の速度で転送しています。 |
||
+ | 以下の利点があります: |
||
− | In short, this procedure is: |
||
+ | *スクリプトに組み込める |
||
− | *scriptable |
||
+ | *ssh よりも高速 |
||
− | *faster than ssh |
||
+ | *簡単に文字列を置換できる |
||
− | *easily used by languages than can substitute string variables |
||
− | *globbing |
+ | *[[Wikipedia:ja:グロブ|globbing]] 機能 |
===プロキシ=== |
===プロキシ=== |
||
31行目: | 32行目: | ||
HTML 認証フォームを使用するプロキシは利用できません。 |
HTML 認証フォームを使用するプロキシは利用できません。 |
||
− | ===pacman |
+ | ===pacman インテグレーション=== |
[[pacman]] で Wget を使ってプロキシ認証を自動的に行わせたい場合、{{ic|/etc/pacman.conf}} の {{Ic|[options]}} セクションに Wget コマンドを記述します: |
[[pacman]] で Wget を使ってプロキシ認証を自動的に行わせたい場合、{{ic|/etc/pacman.conf}} の {{Ic|[options]}} セクションに Wget コマンドを記述します: |
||
XferCommand = /usr/bin/wget --proxy-user "domain\user" --proxy-password="password" --passive-ftp -q --show-progress -c -O %o %u |
XferCommand = /usr/bin/wget --proxy-user "domain\user" --proxy-password="password" --passive-ftp -q --show-progress -c -O %o %u |
||
+ | {{Warning|プレーンテキストにパスワードを保存することは安全ではありません。{{Ic|chmod 600 /etc/pacman.conf}} で root しかファイルを読めないようにしてください。}} |
||
− | {{Warning|be aware that storing passwords in plain text is not safe. Make sure that only root can read this file with {{Ic|chmod 600 /etc/pacman.conf}}.}} |
||
==使用方法== |
==使用方法== |
||
41行目: | 42行目: | ||
===基本的な使い方=== |
===基本的な使い方=== |
||
− | Wget の最も一般的なユースケースはインターネットからのファイルのダウンロードでしょう。 |
+ | Wget の最も一般的なユースケースはインターネットからのファイルのダウンロードでしょう。 |
− | <nowiki>$ wget |
+ | <nowiki>$ wget <URL></nowiki> |
ダウンロードするファイルの URL を既に知っている場合、ブラウザでダウンロードして適当なディレクトリに手動で移動するよりも素早くダウンロードができます。もちろん、単純な使い方以外にも、必要であればダウンロードの自動化を行うことができます。 |
ダウンロードするファイルの URL を既に知っている場合、ブラウザでダウンロードして適当なディレクトリに手動で移動するよりも素早くダウンロードができます。もちろん、単純な使い方以外にも、必要であればダウンロードの自動化を行うことができます。 |
||
− | ===ウェブサイトの完全なアーカイブを作成=== |
+ | === ウェブサイトの完全なアーカイブを作成 === |
− | Wget はウェブサイトの完全なアーカイブ作成を行うことができます。絶対リンクを相対リンクに変更することでリンクが切れないようにします。 |
||
+ | Wget は、絶対リンクを相対リンクに変更することで、正しいリンク先を維持しながら、完全な Web サイトをアーカイブできます。 |
||
− | <nowiki>$ wget -np -r -k 'http://your-url-here'</nowiki> |
||
+ | |||
+ | $ wget --recursive --no-parent --convert-links '<nowiki>target-url-here</nowiki>' |
||
+ | |||
+ | 動的なウェブサイトの場合、静的な HTML に変換するためにいくつかの追加オプションが利用可能です。 |
||
+ | |||
+ | $ wget --recursive --no-parent --page-requisites --adjust-extension --convert-links --backup-converted '<nowiki>target-url-here</nowiki>' |
||
+ | |
||
+ | ''wget'' は、ダウンロード防止メカニズムを回避するためのオプションもあります。 |
||
+ | |
||
+ | $ wget --recursive --no-parent --convert-links --random-wait --execute robots=off --user-agent "Mozilla/5.0" '<nowiki>target-url-here</nowiki>' |
||
+ | |||
+ | また、サードパーティのコンテンツをダウンロードに含める場合は、{{ic|-H/--span-hosts}} スイッチを {{ic|-r/--recursive}} と一緒に使用して、リンクされたホストを再帰的に実行できます。 |
||
+ | |||
+ | {{TranslationStatus|Wget|2024-03-28|695911}} |
2024年3月28日 (木) 01:14時点における最新版
GNU Wget は広く使われているインターネットプロトコルである HTTP, HTTPS, FTP, FTPS (1.18 以降) を使用してファイルを取得するためのフリーソフトウェアパッケージです。非対話型のコマンドラインツールなので、スクリプトから簡単に呼び出すことができます。
目次
インストール
pacman を使って wget パッケージを インストール してください。AUR に git バージョンが存在します: wget-gitAUR
設定
設定は /etc/wgetrc
で行います。デフォルトの設定ファイルはドキュメントがよく整理されているだけでなく、変更する必要は基本的にありません。複雑なオプションについては wget(1) § OPTIONS ページを見て下さい。
FTP の自動化
大抵、ネットワーク上で安全にファイルを転送したいときは SSH が使われますが、SSH で scp や rsync を使うよりも FTP の方がリソースの消費が抑えられます。FTP はセキュアではありませんが、ファイアウォールで保護されている環境で、CPU が制約されるようなシステムで巨大なデータを転送する場合、FTP を使用するのが理にかなっています。
# wget ftp://root:somepassword@10.13.X.Y//ifs/home/test/big/"*.tar" 3,562,035,200 74.4M/s in 47s
上記の例では、Wget は 3.3 GB のファイルを 74.4MB/s の速度で転送しています。
以下の利点があります:
- スクリプトに組み込める
- ssh よりも高速
- 簡単に文字列を置換できる
- globbing 機能
プロキシ
Wget は通常のプロキシ環境変数を使います。参照: プロキシ設定。
プロキシ認証機能を使うには:
$ wget --proxy-user "DOMAIN\USER" --proxy-password "PASSWORD" URL
HTML 認証フォームを使用するプロキシは利用できません。
pacman インテグレーション
pacman で Wget を使ってプロキシ認証を自動的に行わせたい場合、/etc/pacman.conf
の [options]
セクションに Wget コマンドを記述します:
XferCommand = /usr/bin/wget --proxy-user "domain\user" --proxy-password="password" --passive-ftp -q --show-progress -c -O %o %u
使用方法
このセクションでは Wget のユースケースを紹介します。
基本的な使い方
Wget の最も一般的なユースケースはインターネットからのファイルのダウンロードでしょう。
$ wget <URL>
ダウンロードするファイルの URL を既に知っている場合、ブラウザでダウンロードして適当なディレクトリに手動で移動するよりも素早くダウンロードができます。もちろん、単純な使い方以外にも、必要であればダウンロードの自動化を行うことができます。
ウェブサイトの完全なアーカイブを作成
Wget は、絶対リンクを相対リンクに変更することで、正しいリンク先を維持しながら、完全な Web サイトをアーカイブできます。
$ wget --recursive --no-parent --convert-links 'target-url-here'
動的なウェブサイトの場合、静的な HTML に変換するためにいくつかの追加オプションが利用可能です。
$ wget --recursive --no-parent --page-requisites --adjust-extension --convert-links --backup-converted 'target-url-here'
wget は、ダウンロード防止メカニズムを回避するためのオプションもあります。
$ wget --recursive --no-parent --convert-links --random-wait --execute robots=off --user-agent "Mozilla/5.0" 'target-url-here'
また、サードパーティのコンテンツをダウンロードに含める場合は、-H/--span-hosts
スイッチを -r/--recursive
と一緒に使用して、リンクされたホストを再帰的に実行できます。