GNU Web コンテンツ Wget2 をダウンロードするためのユーティリティの最初の安定版リリース

2 年半の開発を経て、GNU Wget2 プロジェクトの最初の安定版リリースが発表され、GNU Wget コンテンツの再帰的ダウンロードを自動化するプログラムの完全に再設計されたバージョンが開発されました。 GNU Wget3 は最初から設計および書き直されており、Web クライアントの基本機能を libwget ライブラリに移動し、アプリケーションで個別に使用できることが特徴です。ユーティリティは GPLv3+ に基づいてライセンスされており、ライブラリは LGPLvXNUMX+ に基づいてライセンスされています。

既存のコード ベースを段階的に作り直す代わりに、すべてを最初からやり直し、別の Wget2 ブランチを確立して、再構築、機能の強化、互換性を損なう変更のアイデアを実装することが決定されました。 FTP プロトコルと WARC 形式の非推奨を除き、wget2 はほとんどの状況で従来の wget ユーティリティの透過的な代替として機能します。

そうは言っても、wget2 には動作の相違点がいくつか文書化されており、約 30 の追加オプションが提供され、数十のオプションのサポートが停止されています。 「-ask-password」、「-header」、「-exclude-directories」、「-ftp*」、「-warc*」、「-limit-rate」、「-relative」などのオプションの処理が含まれています。停止しました」と「--リンク解除」。

主な革新には次のようなものがあります。

  • 機能を libwget ライブラリに移動します。
  • マルチスレッド アーキテクチャへの移行。
  • 複数の接続を並行して確立し、複数のスレッドにダウンロードする機能。 「-chunk-size」オプションを使用すると、1 つのファイルをブロックに分割してダウンロードを並列化することもできます。
  • HTTP/2 プロトコルのサポート。
  • If-Modified-Since HTTP ヘッダーを使用して、変更されたデータのみをダウンロードします。
  • トリクルなどの外部帯域幅リミッタの使用に切り替えます。
  • Accept-Encoding ヘッダー、圧縮データ転送、brotli、zstd、lzip、gzip、deflate、lzma、および bzip2 圧縮アルゴリズムのサポート。
  • TLS 1.3、失効した証明書を確認するための OCSP (Online Certificate Status Protocol)、HTTPS へのリダイレクトを強制するための HSTS (HTTP Strict Transport Security) メカニズム、証明書バインドのための HPKP (HTTP Public Key Pinning) のサポート。
  • GnuTLS、WolfSSL、OpenSSL を TLS のバックエンドとして使用する機能。
  • TCP 接続の高速オープン (TCP FastOpen) のサポート。
  • 組み込みの Metalink フォーマットのサポート。
  • 国際化ドメイン名のサポート (IDNA2008)。
  • 複数のプロキシ サーバーを介して同時に動作する機能 (1 つのストリームは 1 つのプロキシを介してロードされ、2 番目のストリームは別のプロキシを介してロードされます)。
  • Atom および RSS 形式のニュース フィードの組み込みサポート (リンクのスキャンとダウンロードなど)。 RSS/Atom データは、ローカル ファイルまたはネットワーク経由でダウンロードできます。
  • サイトマップからの URL 抽出のサポート。 CSS および XML ファイルからリンクを抽出するためのパーサーの利用可能性。
  • 構成ファイル内の「include」ディレクティブのサポートと、複数のファイル (/etc/wget/conf.d/*.conf) にわたる設定の配布。
  • 組み込みの DNS クエリ キャッシュ メカニズム。
  • ドキュメントのエンコードを変更することでコンテンツを再コード化できる可能性。
  • 再帰ダウンロード中の「robots.txt」ファイルを考慮します。
  • データ保存後の fsync() 呼び出しによる信頼性の高い書き込みモード。
  • 中断された TLS セッションを再開する機能、および TLS セッション パラメータをキャッシュしてファイルに保存する機能。
  • 標準入力ストリーム経由で URL をロードするための「--input-file-」モード。
  • Cookie の範囲をパブリック ドメイン サフィックスのディレクトリ (パブリック サフィックス リスト) と照合して、同じ第 2 レベル ドメインでホストされている異なるサイト (たとえば、「a.github.io」と「b.github.io」) を互いに分離します。イオ”)。
  • ICEcast/SHOUTcast ストリーミングのダウンロードをサポートします。

出所: オープンネット.ru

コメントを追加します