上部にある[Website]に、対象とするWebサイトのアドレスを入力します。
まずScanでサイトを調査してダウンロードする対象を決定し、Copyでサイトのダウンロードを実行します。
[Website]入力欄の右にある[Scan]ボタンをクリックするとQuick Scanが実行され、サイトの構造が表示されます。ここで設定を変更するとサイトのパスの項目の色が変化し、ダウンロードから除外されることを確認できます。
[Quick Scan Settings]の設定はScanの方法であり、Copyとは無関係です。Quickly scanning a website - Cyotek WebCopy Help
ここの設定でクロールを制限しないと、サイト全体がダウンロード対象となります。
ここでの設定はメニューの【Project → Project Properties】の[General]に反映され、そこで確認と変更をできます。
[Website]入力欄の右にある[Copy]ボタンをクリックすると、ダウンロードが実行されます。
ダウンロードの一時停止や再開はできないため、十分に確認してから実行します。Downloading a website - Cyotek WebCopy Help
設定値はレジストリのHKEY_CURRENT_USER\Software\Cyotek\WebCopy以下に保存されます。Managing Settings - Cyotek WebCopy Help
一部の情報は%APPDATA%\Cyotekに保存されます。
Mode | |
---|---|
Site Only | Crawl only URL's matching the source host |
Sub domains | Include any sub domains of the source host |
Sibling domains | Include any sub domains or sibling domains of the source host |
Everything (Not Recommended) | Include everything. Rules should be used to control the crawl process, otherwise WebCopy may behave unexpectedly |
既定ではルートURL (root URL) より上位のページはコピーされないようになっており、たとえば基本URL (base URL) が/a/のときは/a/1はコピーされますが、/b/はスキップされます。この動作はAdvancedの[Crawl above root URL (not recommended)]を有効にすることで変更できます。Crawling outside the base URL - Cyotek WebCopy Help
これが有効だと、外部サイトにリンクされたtext/html以外のファイルもダウンロードされるようになります。
たとえばhttp://example.com/images/sample.jpgにリンクされたファイルは、保存フォルダのimages/sample.jpgに保存されます。
これは外部サイトへのリンクを制限するだけのため、サイトの内部に対しては[Content types]で制限します。
[Remap references within downloaded files]を有効にすると、ローカルのファイル間で参照できるようにリンクのパスが修正されます。これはすべてのダウンロードが完了した後に実行されるため、それまではファイルを開いても不完全な状態となっています。Remapping local files - Cyotek WebCopy Help
ダウンロードする、またはダウンロードから除外するファイルの種類を指定できます。Content types - Cyotek WebCopy Help
種類はtext/htmlやimage/jpegといったMIME typeで指定する必要がありますが、ウィンドウ右下の[Select Types]から選択することでも可能です。
[Maximum number of files]は保存されるファイル数の制限であり、この数を超えても処理は打ち切られず"Too Many Files"としてスキップされるだけです。Limiting downloads by file count - Cyotek WebCopy Help
[Maximum file size]の設定は、HTMLやCSSには適用されません。Limiting downloads by size - Cyotek WebCopy Help
特定のディレクトリ以下に適用するルールを作成するならば、ScanのページでそのURLを右クリックし[Exclude]を指定します。
Compareでルールを適用する対象を指定します。What is a rule? - Cyotek WebCopy Help
例 | |
---|---|
Path | folder/products |
Query String | sort=name&order=asc |
Path and Query String | folder/products?sort=name&order=asc |
Expressionは正規表現で指定します。
このルールはダウンロードから除外するだけであり、Speed Limitsが指定されているときには、ルールに一致してもリクエスト頻度の制限を受けます。
リクエストの頻度を制限できます。設定は1秒または1分ごとのリクエスト数を整数で指定するため、1秒に1回未満とするには1分ごとで指定します。Setting speed limits - Cyotek WebCopy Help
[Enforce limit checks]を有効にすることで、制限を強制できます。これが無効だと処理に成功したときだけ制限されるため、アクセス過多により失敗したときは即座にリクエストしてしまい、失敗し続けることになります。Version 1.0.9.1 - Cyotek WebCopy Revision History - Copy websites locally for offline browsing • Cyotek
これを未設定だと「The remote server is returning a 403 response for the selected user agent. Do you want to change this a default agent that the server accepts?」のように返されることがあり、これを受け入れると[CyotekWebCopy/1.9 CyotekHTTP/6.4]のような文字列が使用されます。
[Add]をクリックし、Cookie PropertiesのValueに必要なすべてのCookieを入力します。
個別に指定するのではなく、Set-Cookieヘッダでリクエストするときの形式とします。つまりNAME=VALUEで名前と値を対にして、複数のCookieはセミコロンで区切ります。簡単にはブラウザの開発者ツールで、要求ヘッダーのCookiesの値をコピーして用います。Cookies - Cyotek WebCopy Help
機能 | |
---|---|
Scan Website | F6 |
Copy Website | F5 |
Project Properties | F9 |
Options | Ctrl+F9 |
Save folderを変更した後にCopyを実行したときに、「Unable to copy website」「パス '***' の一部が見つかりませんでした。」として変更前のフォルダでエラーとなるときには、Projectを作成し直します。
この問題は、変更前のフォルダにアクセスできなくなっているときに発生します。メニューの【Tools → Clear Link Map】でリンクの情報を削除することでエラーを抑制できますが、その状態でダウンロードすると既存のファイルが上書きされないように*-1.htmのように名前が変更されてファイルが作成されるため、ファイルが重複することになります。
[Result]タブのHTTP Statusを確認し、そのページへアクセスしてみます。"Too many access"のように理由を説明してもらえるならば、Speed Limitsで制限します。
Cloudflareによって制限されているならばブラウザでアクセスし、アクセスに成功したときのCookieとUger-Agentをそこからコピーして設定します。Bypass Cloudflare Anti-scraping with Cyotek WebCopy + Fiddler - Rabbit Unknown
[Result]タブのStatusがProcessedとなっていてファイルがダウンロードされていないならば、[Errors]タブのErrorを確認します。それが「リモート名を解決できませんでした。: '***'」となっているならば、ローカルまたはリモート側のネットワークの問題です。
ダウンロードの開始時にネットワークに問題があるならばダイアログが表示され実行に失敗しますが、途中で問題が発生したときは、それが解決されるまでにアクセスしたファイルのダウンロードに失敗します。
「要求は中止されました: 要求が取り消されました」
「転送接続からデータを読み取れません: 接続は閉じられました。。」
通信の失敗時に投げられた例外に、このソフトウェアが対処していないのが原因です。
[Remap references within downloaded files]によるリンクのパスの修正はダウンロードが完了した後に行われるため、途中で停止すると修正されず、ローカルのファイル間で参照されなくなります。この状態を解決するにはすべてのダウンロードを再試行するか、[Download all resources]などを無効にして必要なファイルだけをダウンロードして上書きします。
もしくはパスの修正は機械的に書き換えるだけのため、複数のファイルを一括して処理できるテキストエディタで置換します。そのときフォルダが階層化されて配置されているならば、パスの深さに注意します。