2012-11-01 3 views
0

미리 감사드립니다.for 루프로 수동으로 웹 브라우저를로드하는 방법은 무엇입니까?

for 루프의 각 요소 클릭 문 다음에 웹 브라우저를 다시로드하려면 어떻게해야합니까 ???

case "Assessment  Database - Initial Search Results": 

objHtmlDoc = (System.Windows.Forms.HtmlDocument)webBrowser1.Document; 
HtmlElementCollection row3 = (HtmlElementCollection)objHtmlDoc.GetElementsByTagName("input"); 
foreach (HtmlElement element in row3) 
{ 
    if (element.GetAttribute("type").ToString() == "submit" && element.GetAttribute("name").ToString() == "View") 
    { 
     element.Focus(); 
     element.RaiseEvent("onclick"); 
     //webBrowser1.GoForward(); 
     // webBrowser1.DocumentCompleted += new WebBrowserDocumentCompletedEventHandler(webBrowser1_DocumentCompleted); 
    } 
} 
break; 

답변

0

이것은 XY-Problem 인 것으로 보입니다. 나는 http://www.jcao.org/mylkups.asp에서 데이터를 가져오고 다른 페이지는 수동으로 클릭 한 것처럼 보입니다.

WebClient wc = new WebClient(); 
string page = wc.DownloadString("http://www.jcao.org/mylkups.asp"); 

HtmlAgilityPack.HtmlDocument doc = new HtmlAgilityPack.HtmlDocument(); 
doc.LoadHtml(page); 

var values = doc.DocumentNode.SelectNodes("//input[@name='view']") 
       .Select(t => t.Attributes["value"].Value) 
       .ToList(); 

wc.Headers["Content-Type"] = "application/x-www-form-urlencoded"; 
foreach (var val in values) 
{ 
    var newpage = wc.UploadString("http://www.jcao.org/myrec.asp", "view=" + HttpUtility.UrlEncode(val)); 
    Console.WriteLine(newpage); 
    // 
    //Now Parse that page with HtmlAgilityPack 
} 
관련 문제