\r\n\r\n

wgetを使用して複数のページをpdfに変換する方法

ウェブページをアーカイブして、後でどのデバイスでも読めるようにしたいですか? その答えは、wgetを使ってこれらのサイトをpdf形式に変換することです...

WebページをPDFに変換するためのオンラインツール、ブラウザの拡張機能、デスクトッププラグインは数多くあり、これらのツールを定期的に使用していると、複数のリンクを一度に変換する必要がある場面に遭遇することがあります。次から次へとやるのは時間がかかるし、面倒くさい。

この作業は、Wgetという簡単なコマンドラインユーティリティで自動化することができます。いくつかのスクリプトやアプリケーションとこのツールを使って、複数のウェブページをPDFファイルに保存する方法を紹介します。

なぜwgetなのか?

Wgetは、ウェブからファイルをダウンロードするためのフリーソフトです。しかし、ウェブページ全体をパソコンにミラーリングするのにも最適なツールです。その理由は、以下の通りです。

  • ノンインタラクティブなので、バックグラウンドで動作し、自分の存在を必要とせずにデータを転送することができます。
  • Wgetはウェブサイトのディレクトリ構造を理解します。HTMLページ内のリンクをたどることで、遠隔地のウェブサイトのローカル版を作成することができます。その際、robot.txt ファイルも尊重されます。
  • 低速のインターネット回線や不安定なインターネット回線でも動作します。サーバーがリゲッティングに対応している場合、ファイル全体がお客様のコンピューターに転送されるまでリトライを続けます。
  • Wgetはプロキシサーバをサポートしており、ネットワーク負荷の軽減、検索処理の高速化、ファイアウォール越えのアクセスに役立ちます。

wgetのインストール

macosの場合

Wgetをインストールする最も早い方法は、homebrewプログラムを介してインストールすることです。macOSのパッケージマネージャで、便利なUnixユーティリティやアプリケーションをインストールするために使用されます。Homebrew経由でmacOSアプリケーションをインストールする方法については、こちらの記事をご覧ください。次に、次のように入力します。

brew install wget

Mac上でWgetを動作させるために必要なすべてのツール(もしあれば)のインストールの進捗状況をライブで確認することができます。すでにhomebrewをインストールしている場合は、必ずbrew upgradeを実行して、このユーティリティの最新版を入手してください。

Windows 10の場合

Wgetはwindows10で使えるバージョンがたくさんあります。永遠の掲示板にアクセスして、最新の64bit版をダウンロードしてください。実行ファイルをフォルダーに入れ、C:ドライブにコピーします。

これで、任意のディレクトリからツールを実行するために、システムの環境変数にWgetのパスを追加しました。コントロールパネル>システム」を開き、「システムの詳細設定」をクリックします。開いたウィンドウで、「環境変数」をクリックします。

システム変数」の「パス」を選択し、「編集」をクリックします。次に、ウィンドウの右上にある「新規作成」ボタンをクリックします。C:\wget と入力し、[OK] をクリックします。

コマンドプロンプトを開き、wget-hと入力し、すべてがうまくいっていることを確認します。PowerShellでwget.exe file-hと入力すると、Wgetのヘルプメニューが表示されます。

リンクをテキストファイルに保存する

複数のリンクを扱うため、1つ1つリンクを貼り付けるのは大変な作業です。この作業を手助けしてくれるブラウザの拡張機能があるのはありがたい。

Link Klipper:Webページ上のすべてのリンクをCSVまたはTXTファイルとして抽出します。ウェブページ上の矩形領域をドラッグすることで、リンクを選択的にコピーすることも可能です。ダウンロードフォルダーに保存されます。

Snap Links Plus:ページ上の要素にひっかけて、何かをすることができるようになります。マウスの右ボタンを押しながら、リンクの周囲を選択用の四角形でドラッグします。コントロールキーを押しながら、リンクをクリップボードにコピーしてください。

カタログの設定

Wgetはウェブクローラーのように動作し、HTMLファイルからロゴ、フォント、画像サムネイル、CSS、JavaScriptファイルなどのウェブページ資産を抽出します。また、リモートサーバーと同様のディレクトリ構造を作成しようとする。Wgetダウンロード用に別のディレクトリを作成し、Webページを保存して散らからないようにします。

Macのターミナル、またはWindowsのコマンドプロンプトで、次のように入力します。

mkdir Wgetdown

ホームディレクトリに新しいフォルダが作成されるので、好きな名前を付けてください。

cd Wgetdown

これにより、現在の作業ディレクトリがwget downに変更されます。

wgetコマンドの詳細

ディレクトリを作成した後、実際にWgetコマンドを使用します。

wget -E -H -k -K -p -i [Path to Your Text File]

Wgetはコマンドライン引数の処理にgnugetoptを使用しています。各オプションには、ロングフォームとショートフォームがあります。長い選択肢は覚えやすいが、入力に時間がかかる。また、異なるオプションスタイルを混在させることも可能です。次のオプションについて詳しく説明しましょう。

  • -E (--adjust extension): "app/xhtml+xml" または "text/html" タイプのファイルがダウンロードされ、URLが html で終わらない場合、このオプションは以下のように追加されます。htmlをファイル名に変換します。
  • -H (-span hosts): リンクを再帰的に取得しようとしたときに、不要なデータロードを取得しないようにします。Wgetに特定のリンクだけに注目させたい。このオプションはホスト展開を有効にし、Wgetの再帰的実行により、リンク先で参照される任意のホストにアクセスできるようにします。例えば、異なるホストからの画像など。
  • -p (-- page requisites): HTMLページを表示するために必要なファイルをすべてダウンロードします.インライン画像、音声、引用スタイルシートが含まれています。
  • -k (--convert links): 文書内のリンクを変換し、オフラインでの閲覧に適した状態にします。画像の埋め込み、スタイルシートへのリンク、HTML以外のコンテンツへのハイパーリンクなどが含まれます。
  • -K (-backup converted): ファイルを変換するとき、このオプションは接尾辞 .orig を使って元のバージョンをバックアップします。
  • -i (--input file): ローカルまたは外部ファイルのパスからURLを読み取ります。

コマンドを使用する

これらのコマンドを実際に示すために、「ワークフローの書き方」というサイトのマニュアルを考えてみましょう。このマニュアルは、目次と各セクションへのリンクで構成されています。最終的な目標は、これらのセクションのために別のPDFファイルを作成することです。

ステップ1:ターミナルを開き、上記のように新しいフォルダーを作成します。

ステップ2: Link Klipperの拡張子を使って、リンクをテキストファイルとして保存します。ファイルをダウンロードフォルダーに保存します。

ステップ3:Wgetdownフォルダで、次のように入力します。

wget -E -H -k -K -p -i /Users/rahulsaigal/Downloads/links.txt

手順4:Enterキーを押します。処理が完了するのを待ちます。

ステップ5:Wgetdownフォルダに移動します。すべてのWebリソースとchapter1.htmlフォルダを含むメインドメインprocessword.netが表示されます。

htmlをpdfに変換する

WebページをPDFに変換するのは簡単そうに見えますが、元のWebページと同じように見せるのは難しい作業です。

  • システムフォントを利用できます。
  • HTMLタグの整合性。
  • テーブルやフローティング画像に必要な機能をサポート。
  • (オプション) カタログ

Windows 10

PrinceXMLは、HTMLファイルを素早くPDFに変換するアプリケーションです。設定可能なレイアウトとWeb標準に対応したHTMLコンテンツの組版、フォーマット、印刷を可能にします。便利なフォントが多数用意されており、PDF出力のカスタマイズも可能です。このアプリケーションは、非商用であれば無料でご利用いただけます。

マルコス

Macでは、HTMLファイルのバッチをPDFに変換するAutomatorサービスを作成することができます。Automatorを開き、クイックアクション文書を作成します。Finderからファイルやフォルダーを受信するためのサービスオプションを設定します。次に、runshellスクリプトをドラッグして、Pass inputオプションをas argumentsに設定し、次のスクリプトをbodyに貼り付けます。

for theFileToProcess in "$@"docupsfilter "$theFileToProcess" > "${theFileToProcess%.*}.pdf"done

HTML2PDFとして保存します。

ここで、FinderですべてのHTMLファイルを選択します。右クリックし、「サービス」 > 「HTML2PDF」を選択します。すべてのファイルを変換するため、しばらくお待ちください。

1ページをpdfに変換する

複数のウェブページをPDFに変換する手順は、一見すると複雑に見えるかもしれません。しかし、一度手順やプロセスを理解すれば、長い目で見れば時間の節約になります。ウェブ契約や高価なPDFコンバータにお金をかける必要はありません。

ウェブページをPDFに変換する方法をお探しの方は、こちらの記事をご覧ください。

  • 2021-03-19 11:02 に公開
  • 閲覧 ( 43 )
  • 分類:IT

あなたが興味を持っているかもしれない記事

匿名者
匿名者

0 件の投稿

作家リスト

  1. admin 0 投稿
  2. 匿名者 0 投稿

おすすめ