サイトの1ページを、ダウンロードするには?

解決


 2015-04-29 15:13:55  No: 47235  IP: 192.*.*.*

サイトの1ページを、ダウンロードするにはどうすればいいですか?
Indyで希望です。

編集 削除
igy  2015-04-29 22:02:51  No: 47236  IP: 192.*.*.*

TIdHTTP の Get メソッド  では、ダメですか?

編集 削除
 2015-04-30 21:24:23  No: 47237  IP: 192.*.*.*

1ページをまるごとで、画像がついていたらそれもお願いします。
ダウンロードしたものを、ローカル環境のみで、見れるような方法をお願いします。
リンク先は、保存しなくてもかまいません。

そうなると、ファイル(画像)のアドレスを抽出して、個別にダウンロードしたり、絶対パスを相対パスにしたりしてHTMLを書き換えたりすることになると思うのですが、そうなると、やはりDOMの知識とかも必要になるのでしょうか?
また、パスは違うが、同名ファイルの扱いとか考えると、どうしたらいいのか?と。

Getのみで可能でしょうか?

また、特定のブラウザコンポーネントによる機能の方が簡単でしょうか?
回答有り難うございます。

編集 削除
igy  2015-05-01 21:13:13  No: 47238  IP: 192.*.*.*

>また、特定のブラウザコンポーネントによる機能の方が簡単でしょうか?

Delphiじゃなく、C#で、

WebページをMHT形式(.mhtファイル)で保存するには?[C#、VB]
http://www.atmarkit.co.jp/fdotnet/dotnettips/690createmht/createmht.html

とか、あるみたいです。

編集 削除
 2015-05-02 15:17:21  No: 47239  IP: 192.*.*.*

やはり、地道にやるしかなさそうですね。
ありがとうございました。

編集 削除
deldel  2015-05-07 12:58:44  No: 47240  IP: 192.*.*.*

ここにありましたよ。
http://delphi.about.com/od/twebbrowser/a/save-as-mht.htm

編集 削除
Mr.XRAY  2015-06-02 00:19:22  No: 47241  IP: 192.*.*.*

>サイトの1ページを、ダウンロードするにはどうすればいいですか?
>Indyで希望です。

こういうのは「丸投げ」と解釈できますし,
そのようなプログラムを誰が作ってくれという「依頼」とも受け取れます.
このような掲示板は,間違いなく「プログラムの作成やアプリの開発を依頼」する場所ではありません.

http://www.hyuki.com/writing/techask.html#giveandtake

とはいえ,検索して,この記事をご覧になる方への参考にレスしておきます.

(1) インターネットブラウザ (IE, FireFox, Google Chrome 等) でウェブページを表示
(2) そのページの任意の場所でマウスの右ボタンクリック
(3) メニューから(このようなメニューをポップアップメニューと言います)
    [ページのソースを表示] あるいは [ソースの表示] 等の項目を選択

この時表示されるコードを「HTML コード」と言います.
ブラウザは,このコードを解析して,文章や画像を表示します.
ウェブページを保存するには,この HTML コードをテキストとして保存します.
更に,表示している画像も,ローカルなディスクに保存します.

サーバ上の画像の場所,つまり,パス名は,HTML コードの中に書いてあります.
それを取得して,ダウンロードすることになります.
そのためには,HTML コードを解析しなければなりません.
HTML コードについては,以下を参考にしてください.

[とほほのWWW入門]
http://www.tohoho-web.com/www.htm


具体的なプログラムを作成しています.必要があればダウンロードして,勉強してください.
ただし,必ずしもいいサンプルコードと言えるわけではありません.

[766_ウェブブラウザを使用しない Web ページの保存]
http://mrxray.on.coocan.jp/Delphi/plSamples/766_SaveWebPage.htm


>サイトの1ページを、ダウンロードするにはどうすればいいですか?
>Indyで希望です。

という,元の質問に対するレスとしては,
「HTML コードを解析して,必要なファイルをダウンロードします」と
ということになります.「Indyで希望です。」というのは完全な依頼になってしまいます.
ダウンロードに Indy を使用したいのであれば Indy を使えばいいだけです.

編集 削除