3

私はここで少し立ち往生しています。Web サイトからデータを読み取る Windows アプリケーションの作成に忙しくしています。ただし、ウェブサイトでは最初にログインが必要であり、パスを取得できないようです。私はプログラミングにかなり慣れていないので、誰かが解決策を知っていることを願っています。

これは私がログインに使用するコードです:

private void btnLogin2_Click(object sender, EventArgs e)
    {
        HttpWebRequest request = WebRequest.Create(LoginPageURL) as HttpWebRequest;
        request.KeepAlive = true;
        request.Method = "POST";
        request.ContentType = "application/x-www-form-urlencoded";
        request.UserAgent = "Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/29.0.1547.2 Safari/537.36";
        string postData = "j_username=" + number + "&j_password=" + password;
        byte[] dataBytes = UTF8Encoding.UTF8.GetBytes(postData);
        request.ContentLength = dataBytes.Length;
        using (Stream postStream = request.GetRequestStream())
        {
            postStream.Write(dataBytes, 0, dataBytes.Length);
        }
        HttpWebResponse httpResponse = request.GetResponse() as HttpWebResponse;
        request = WebRequest.Create(Page2URL) as HttpWebRequest;
        request.UserAgent = "Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/29.0.1547.2 Safari/537.36";
        request.CookieContainer = new CookieContainer();
        request.CookieContainer.Add(httpResponse.Cookies);
        request.Method = "GET";
        HttpWebResponse httpResponse2 = request.GetResponse() as HttpWebResponse;
        StreamReader stream = new StreamReader(httpResponse2.GetResponseStream(), System.Text.Encoding.UTF8);
        string result = stream.ReadToEnd();
        stream.Close();

        tbOutput2.Text = result;



    }

ポイントは、ログイン後にページの HTML を取得することです (Page2URL)。しかし、ログインページから HTML を取得し続けます。

4

1 に答える 1