Sto utilizzando Watin nell'app console C# per eseguire la scansione dei siti Web, ci sono cinque app per console in esecuzione contemporaneamente. Il motivo per cui utilizzo in parte Watin come crawler è perché alcuni siti Web utilizzano javascript (o ajax) per impostare il contenuto della pagina.Uso intensivo di Watin, IE stay open problem
seguito è il codice di esempio per ottenere una pagina di commento conteggio:
Settings.Instance.MakeNewIeInstanceVisible = false;
using (var browser = new IE(commentLink, true))
{
browser.Link(Find.ByUrl(commentLink)).WaitUntilExists(20);
Span commentSpan = browser.Span("COUNT_TOTAL");
if (commentSpan.Exists)
{
int commentCount;
if (Int32.TryParse(commentSpan.InnerHtml, out commentCount))
{
return commentCount;
}
}
}
Il mio problema è dopo aver eseguito queste app 5 console per un po '(90 min), un sacco di istanze di IE sono stati aperti (a causa di timeout o errore o IE è occupato), quindi il sistema è piuttosto lento e deve essere riavviato.
Come cambio il mio codice per evitare che ciò accada e rendere le mie app sempre efficienti?