HTMLAgilityPack 및로드시 시간 초과

.net c# html-agility-pack vb.net

문제

저는 서버에있는 파서에서 HTMLAgilityPack을 사용하고 있습니다. 그러나 구문 분석하는 웹 사이트 중 하나에 문제가 있습니다. 매일 6 시경에 유지 관리를 위해 서버를 종료하는 경향이 있습니다. HTMLWeb에 대한 Load () 메서드를 사용하고 내 응용 프로그램을 중단시킵니다. HTMLAgilityPack에 웹 사이트를로드하는 더 안전한 방법이 있습니까? 아니면 C #에서 오류 검사를 수행하여 내 앱이 충돌하지 않도록 할 수 있습니까? (내 C #은 약간 녹슬다.) 지금 내 코드는 다음과 같습니다.

HtmlWeb webGet = new HtmlWeb();
HtmlDocument document = webGet.Load(dealsiteLink); //The Load() method here stalls the program because it takes 1 or 2 minutes before it realizes the website is down

고맙습니다!

인기 답변

try-catch로 호출을 둘러 쌉니다.

HtmlWeb webGet = new HtmlWeb();

HtmlDocument document;
try
{
    document = webGet.Load(dealsiteLink); 
}
catch (WebException ex)
{
    // Logic to retry (maybe in 10 minutes) goes here
}

정확한 재시도 논리는 응용 프로그램이 어떻게 구성되어 있는지에 달려 있습니다. 응용 프로그램에서 try-catch 블록을 이보다 훨씬 높게 배치해야 할 필요가있을 것입니다.

WebException 예외 잡으려고 생각하지만 설명서를 찾을 수 없기 때문에 나는 확신 할 수 없습니다. TimeoutException 을 catch해야 할 수도 있습니다.



아래 라이선스: CC-BY-SA with attribution
와 제휴하지 않음 Stack Overflow
이 KB는 합법적입니까? 예, 이유를 알아보십시오.
아래 라이선스: CC-BY-SA with attribution
와 제휴하지 않음 Stack Overflow
이 KB는 합법적입니까? 예, 이유를 알아보십시오.