目次

ダウンロードの準備

ここまででWgetのインストールが完了しました。ダウンロードする度に毎回長いコマンドを打っていくのは大変なので、簡単なスクリプトのダウンロードと設定などを行っていきます。

ダウンロード用フォルダの作成

ダウンロードしたブログのデータを保存する為の作業フォルダを作成します。場所も名前も何でも構いません。今回は「C:\Users\ユーザー名\Downloads」に「yaplog」というフォルダを作成しました。このフォルダ配下にダウンロードしたブログのデータが保存されることになります。ただし「Program Files」フォルダや「Windows」フォルダなどはセキュリティの関係上、後述のスクリプトが実行できない可能性があるので、ユーザーフォルダ内にした方が良いと思います。

yaplogdl_4-1_1

スクリプトファイルのダウンロード

Wgetを実行する為に長いコマンドを毎回打つのは大変なので、予めコマンドを記載したスクリプトファイルを作成してそこから実行するようにしました。当初はバッチファイルだったのですが、長くなってしまったのでVBScriptとやらに変更しました。下記ファイルをダウンロードしてお使いください。なお、拡張子が「.txt」となっていますが、ダウンロード後に「.vbs」に変更して下さい。

ヤプログダウンロード用スクリプト

※ 一般的な設定ではVBSファイルをダブルクリックすると即スクリプトが実行されてしまいますので、ご注意下さい。後述の設定が必要になります。

ダウンロードしたら上記で作成した作業フォルダの中に移動かコピーします。

yaplogdl_4-2_1

スクリプトの中身について

このスクリプトが行うことはWgetの実行不要ファイルの削除装飾用ファイル(CSSファイル)の修正です。

Wgetの実行

Wgetはコマンドラインで操作するツールとなっており、毎回オプションを入力するのは面倒なので予めスクリプトにコマンドを記述しています。

不要ファイルの削除

これは詳しく調べていませんが、閲覧時に毎回エラーメッセージを毎回表示させるファイルがあるようなので、とりあえず削除してます。

装飾用ファイル(CSSファイル)の修正

Wgetの新しいバージョンでは装飾用ファイル(CSSファイル)内も追跡してくれるようなのですが、今回使用したバージョン1.11.4では追跡できないようなので、個別にダウンロードをしてファイル内容を書き換えるということを行っています。具体的には下記スクリーンショットの赤枠内の画像を表示させる為の対応です。

yaplogdl_4-3_1

スクリプトの設定箇所

スクリプトファイルの設定を行っていきます。

スクリプトファイルをメモ帳などで開き、下記スクリーンショットの赤枠内のパスをインストールしたWgetのパスに変更して保存します。インストール場所を変更していなければ、一般的には64bitOS、32bitOSそれぞれ以下にインストールされると思います。

64bitOSの場合

C:\Program Files (x86)\GnuWin32

32bitOSの場合

C:\Program Files\GnuWin32

変更するのはダブルクォーテーションで囲まれている中の文字列を変更します。

yaplogdl_4-4_1

能年さんの公式ブログをダウンロードする場合には他は変更の必要が無いと思いますが、もしヤプログ内の他のブログをダウンロードする場合には、下記2行を変更すると、もしかしたら動くかもしれません。変更する部分は「lp-n-rena」となっている部分をダウンロード対象のブログのユーザー名に(これは必須)、「data\yaplog.jp\"&YAPLOG_USERNAME&"\style.css」となっている部分を「style.css」が存在するフォルダまでのパスに変更します。「style.css」に関してはブログによって置き場所が異なりますし、設定しなくてもダウンロード自体はできると思います。他のブログでは試していないので、もしかしたら出来るかも?程度でお考え下さい。

  Dim YAPLOG_USERNAME: YAPLOG_USERNAME = "lp-n-rena"
  Dim CSS_FILE_PATH: CSS_FILE_PATH = "data\yaplog.jp\"&YAPLOG_USERNAME&"\style.css"

yaplogdl_4-4_2

Wgetの各オプションについて

ここは飛ばしても問題ありません。Wgetの各オプションについて今回設定した部分をざっと紹介していきます。Wgetのオプションについては、「–help」というコマンドで表示されますので、興味のある方は調べてみてください。

–directory-prefix
保存されるファイルの場所で、今回の場合は「data」というフォルダに保存されることになります。Wgetを実行したフォルダの中の「data」というフォルダにダウンロードしたファイルが保存されることになります。
–input-file
WgetがファイルからURLを読み込んでダウンロードを実行する場合に指定します。今回は「list.txt」と指定しているので、このファイルからダウンロード対象のURLを読み込むことになります。このファイルはこれから作成します。
–output-file
Wgetのログを保存するファイルです。今回は「log.txt」と指定しているので、Wgetを実行したフォルダの中に「log.txt」というログを記録したファイルが作られます。
–append-output
上記ログファイルに追記する為のオプションです。多分これを書かないと毎回「log.txt」が上書きで作られるのではないかと思います。
–html-extension
有効にするとファイルの拡張子を付加してくれます。たとえばダウンロード対象のURLが「http://yaplog.jp/lp-n-rena/archive/xxxx」となっている場合には、「xxxx.html」と拡張子を自動的に付加し保存されるようになります。拡張子が無いとWebブラウザで閲覧時に面倒なので有効にしています。
–recursive –level
再帰的にダウンロードを行うかどうかの設定です。再帰的にダウンロードとは、Webサイトの場合は一つのページからクモの巣状にリンクが張り巡らされているので、リンク先までダウンロードするかどうかということです。「–level」となっているのはどの階層までダウンロードするかの設定です。今回は「1」に設定しています。これはダウンロード対象のURLから1階層分までをダウンロードするということになります。今回の場合は個別記事ページから、リンクされた個別画像ページをダウンロードするために設定しています。
–convert-links
ダウンロードしたファイルの中身のパスをファイルのパスに変換するか否かの設定です。これを指定しておかないと、ダウンロードしたファイルではなくインターネット上のファイルを参照してしまいます。
–span-hosts
ダウンロード対象のURLが存在するホスト以外の場所に存在するファイルもダウンロードするかどうかの設定です。たとえば、ブログの画像ファイルなどは記事のページが存在するホストとは別のところに存在しているのでこれを指定しないとダウンロードされません。
–page-requisites
ページ表示に必要な他のファイルもダウンロードするか否かです。これを指定するとでページ内に埋め込まれている画像ファイルなども一緒にダウンロードされます。
–domains
ダウンロード対象とするドメインを指定します。ブログそのものとは関係の無い余分なファイルをダウンロードしないように指定しています。
–include-directories
ダウンロード対象とするディレクトリを指定します。上と同じ理由で指定しています。
–exclude-directories
ダウンロードの対象外とするディレクトリを指定します。–include-directoriesで指定したディレクトリの中で不要なディレクトリを指定しています。
–wait
ファイルをダウンロードする度に何秒待つかを指定します。今回は1秒にしているので、1秒毎にファイルをダウンロードします。
–random-wait
上記–waitで指定した値の0.5~1.5倍のランダム間隔でダウンロードするようにします。
–no-clobber
保存したファイルが既に存在する場合にはダウンロードを行わない設定です。ブログの場合は各記事自体が更新されることはほとんど無いので、余計なダウンロードを行わないように設定しています。
–header
詳細は端折りますが、能年さんの公式ブログの場合はアメブロに画像ファイルが存在している場合があるので、その対策用にリファラを指定しています。これがないとアメブロに画像がある記事は正常にダウンロードできません。

ダウンロードするURLを定義したテキストファイルの作成

ダウンロード対象とするURLを定義するファイルを作成します。これは単純にURLを記載したテキストファイルです。とりあえず最近の記事のURL「http://yaplog.jp/lp-n-rena/archive/1179」で作成します。なお、末尾にスラッシュが付いていると想定通りに動かない可能性があるので注意して下さい。

yaplogdl_4-6_1

作成したら作業フォルダ(スクリプトファイルと同じ)に「list.txt」という名前で保存します。

yaplogdl_4-6_2


【Windows PC向け】能年玲奈さんの公式ブログ(yaplog!)をダウンロードする その3