C#でWebページをダウンロードする

C#でウェブサイトのページを取得したい場合には「System.Net.WebClient」クラスを使うと便利です。

ここでは WebClientクラスを使ってWebページをダウンロードする方法を解説します。

Webページをダウンロードしてファイルに保存する

URLを指定して該当ページをファイルに保存するには DownloadFileメソッドを使います。

static void Main()
{
    WebClient wc = new WebClient();
    wc.DownloadFile("http://www.google.co.jp/", "c:\\test.htm");
}

WebClientクラスのインスタンスを作成して、DownloadFileメソッドを呼び出します。

引数の1番目に取得するサイトのURLを、2番目に保存するファイル名を指定します。

Webページをダウンロードしてbyte配列で取得する

URLを指定して該当ページをbyte配列で取得するには DownloadDataメソッドを使います。

static void Main()
{
    WebClient wc = new WebClient();
    byte[] data = wc.DownloadData("http://www.google.co.jp/");
}

WebページをStreamクラスで取得する

WebページをSystem.IO.Streamクラスの形で取得したい場合は OpenReadメソッドを使います。

static void Main()
{
    WebClient wc = new WebClient();
    Stream st = wc.OpenRead("http://www.google.co.jp/");
}