각 HTML을 개별적으로 추출해야하는 URL 목록이 있습니다. URL은 :C# webBrowser in a loop
foo_list = {"expamle.com", "example.net", "example.org"};
코드는 내가 노력 :
foreach (string x in foo_list) {
webBrowser1.Navigate(x);
}
private void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
{
string html = webBrowser.Document.Body.Parent.OuterHtml;
// handle the html and save to file...
}
문제는 난 그냥 HTML과 목록의 마지막 URL (example.org
)의 데이터를 가지고있다. foreach 루프의 Navigate
명령이 너무 빨리 실행되므로 마지막 URL이 DocumentCompleted
을 기다릴 수 있음을 이해합니다. 그렇다면이 문제를 어떻게 처리 할 수 있습니까?
'async'와'await'을 사용하십시오. – Shaharyar
'Chelsea_cole'은 웹 기능/브라우징 및/또는 리디렉션이'Stateless'이고'Windows'와 같지 않습니다. 여유 시간에 비동기 작업을 기다리고 기다릴 것입니다. function – MethodMan
어, 왜 HTTP 클라이언트를 사용하지 않으시겠습니까? REST 샤프를보세요 – Crisfole