2012-03-27 6 views
0

최근에 C#을 사용하여 웹 사이트에서 데이터를 가져 오는 방법을 모색했습니다. WebBrowser 객체를 사용하여 탐색하고 로그인하려고 시도했지만 괜찮 았지만 같은 문제가 반복해서 발생했습니다. 원하는 페이지로 이동하면 연결이 끊깁니다.C# 로그인 후 웹 사이트에서 HTML 다운로드

하나의 HtmlDocument 만 존재하는지 확인하는 등 여러 가지 시도를했지만 여전히 로그 아웃됩니다.

TLDR : WebBrowser로 웹 사이트를 탐색하는 동안 페이지간에 이동하는 방법은 무엇입니까? 또는 더 좋은 대안이 있습니까?

편집 : 지금까지 다음 코드를 가지고 있습니다.

currentWebBrowser = new WebBrowser(); 
currentWebBrowser.DocumentText = @"<head></head><body></body>"; 
currentWebBrowser.Url = new Uri("about:blank"); 
currentWebBrowser.Navigate("http://google.com"); 

HttpWebRequest Req = (HttpWebRequest) WebRequest.Create("http://google.com"); 
Req.Proxy = null; 
Req.UseDefaultCredentials = true; 
HttpWebResponse Res = (HttpWebResponse)Req.GetResponse(); 

currentWebBrowser.Document.Cookie = Res.Cookies.ToString(); 

언제 쿠키를 받아야합니까? 내 코드가 맞습니까?

+1

여기에 코드가 있습니다. –

답변

2

로그인 요청에서 반환 된 쿠키를 보존하고 모든 후속 요청에서 쿠키를 다시 사용해야합니다. 인증 쿠키는 서버에 실제로 로그인했음을 알려줍니다. 예 : 그 방법에 대해서는 here을 참조하십시오.

관련 문제