Я использую веб-браузер C # для сбора данных с веб-сайта. Проблема в том, что для получения 250 записей требуется около 20 минут.
То, что я делаю программно, это
1- Получите все годы в раскрывающемся списке
2- каждый год я делаю поиск. и собрать данные из таблицы.
3 - первая ячейка строки является ссылкой (подробности), а остальные ячейки имеют основную информацию.
поэтому я получаю основную информацию, открываю ссылку на подробности в новом браузере и получаю детали
4- цикл через шаг 3
Я сделал тест производительности программы и увидел, что ожидание загрузки документа занимает много времени
если я пропускаю удаление данных со страницы сведений, то для удаления всех данных требуется 1,5 минуты.
Я использую следующий метод, чтобы дождаться завершения документа, прежде чем я начну утилизацию
public async Task WaitPageLoad(int timeOut)
{
var pageLoaded = new TaskCompletionSource<bool>();
var timeElapsed = 0;
DocumentCompleted += (s, e) =>
{
if (ReadyState != WebBrowserReadyState.Complete) return;
if (pageLoaded.Task.IsCompleted) return; pageLoaded.SetResult(true);
};
while (pageLoaded.Task.Status != TaskStatus.RanToCompletion)
{
await Task.Delay(10);
timeElapsed++;
if (timeElapsed >= timeOut * 100) pageLoaded.TrySetResult(true);
}
}
поэтому мне было интересно, есть ли способ заставить браузер загружать только html, а не изображения или что-то в этом роде ...
любая помощь очень ценится!