
ウェブサイトからデータを取得しようとしています。
プログラムを URL にポイントするだけで、そのドメインのすべてを取得する方法はありますか。OSX 10.5 でこれを実行するにはどうすればよいですか? 本当に必要な場合は、最後の手段として Ubuntu または Windows ボックスを使用できます。
答え1
wget
次のコマンドを使うことができます。Mac OS X用にダウンロード可能ほとんどの Linux ディストリビューションに含まれており、Web サイトのコンテンツ全体、画像、CSS、JavaScript、ビデオ、Flash ファイルなどすべてをダウンロードできます。
入手したら、ターミナルを開きます。おそらく次のように呼び出すことになるでしょう:
wget -r -l0 -k http://www.example.com/
ダウンロードされますすべてリンクからアクセスできるようにhttp://www.example.com/
します。この-r
オプションは再帰ダウンロードをオンにするので、ホームページだけでなく他のページもダウンロードします。この-l
オプションは、何ページ深くからリンクを探してダウンロードするかを設定します。0
私が行ったように に設定すると、できるだけ深くまで進むように設定されます。Web サイトが動的なページ生成を使用している場合、同じまたは非常に類似したコンテンツを指す URL が多数存在する可能性があるため、ダウンロード量が多くなる可能性があることに注意してください。-k
コマンドはオプションで、wget
すべてのリンク、画像タグなどをローカル マシン上の正しい場所に変換して、コンピューターの Web ブラウザーで表示できるようにし、正しく機能するようにします。
ダウンロードできるのは、参考文献、他のドメインではありません。他のドメインに移動する必要がある場合は、スイッチを使用して-H
それをオンにし、オプション-D
スイッチを使用してダウンロード元の他のドメインを定義します (例)。スイッチをオフにして /infiniteに設定すると、World Wide Web 全体をダウンロードしようとする可能性がある-D comments.example.com,beta.example.com
ため注意してください。-D
-l
0
役に立つかもしれないもう 1 つのスイッチは、-N
スイッチです。このスイッチは、ローカル ファイルのタイムスタンプをサーバーの HTTP ヘッダーによって提供される時刻に設定しLast-Modified
、後続のダウンロードでは変更されていないファイルをダウンロードしません。
詳細については、ドキュメントwget
。