Месяц: Июнь 2024
NavigationCompleted вызывается каждый раз при загрузке нового урла.
09.06.2024
Событие NavigationCompleted вызывается каждый раз, когда прогружается новый URL. То есть если сайт куда-то заредиректит, то это событие вызовется. Авито в случае если считает зашедшего ботом, то редиректит на какую-то страницу с ошибкой. У меня в этом случае сразу происходит вызов функции для получения нового урла. В общем решил, что пока просто отслеживаю http-код ответа сервера. Если 200, значит всё ок, если другой, то вызов урла не вызываю. Но там может быть еще редирект на страницу проверки браузера как у ЦИАН, да и урл может редиректит на другой. В общем не идеальное решение, но пока протестю как это работает и посмотрим. Код сейчас такой:
1 2 3 4 5 6 7 8 9 10 11 12 |
private async void ShowContent(WebView2 sender, CoreWebView2NavigationCompletedEventArgs args) { int httpStatusCode = args.HttpStatusCode; if (httpStatusCode == 200) { //тут весь рабочий код, попадаем сюда если код 200 } else { //пропускаем рабочий код, ну и задержка на минуту тут } } |