Курсы по программированию

Формула программиста
основатель — Волосатов Евгений Витольдович

Webbot On-Line / Работа - работа, перейди на Федота, а с Федота...

  • 1. Пишем отдельный метод Rabota
    2. Добавляем таймер
    3. Проверяем работу Робота
    Вопрос: как определить что страница уже загрузилась?
  • Дата отправки отчёта: 28 апреля
  • Задание выполнено: за 31 мин.
  • Чему научился: Делать из ЧекБокса кнопку
  • Что было сложным: Да вроде ничего сложным не было, сложный вопрос, который автор задания задал, на него бы я хотел получить ответ
  • Комментарии: Всем здравствуйте ну и начнём. Проблема загрузки страницы меня волнует уже некоторое врёмя, я много гуглил, есть разные решения, но 100% универсального решения нет.
    Для нашего случая (случай очень простой и лёгкой html страницы) всё очень просто:
    if (webbrowser.DocumentCompleted != WebBrowserReadyState.Complete)
              Application.DoEvents();
    можно ждать наступление события webBrowser_DocumentCompleted
    И в нашем случае это прокатит, но есть случаи когда на странице несколько фреймов и по завершению загрузки каждого будет срабатывать событие webBrowser_DocumentCompleted, и в общем случае непонятно сколько таких событий должно быть, если не рассматривается одна конкретная страница и под неё всё не затачивается.
    А ещё весёлый случай когда WebBrowserReadyState.Complete не наступает, то есть страница его вообще не достигает а замирает на WebBrowserReadyState.Interactive - тоже неприятная ситуация.

    Вот вопрос к создателю, знает ли он универсальный способ (для любой страницы) определения загрузилась ли она?
  • Оценка видео-уроку:
Отчёт от 8275 за Webbot On-Line / Работа - работа, перейди на Федота, а с Федота...


Отчёт от 8275 за Webbot On-Line / Работа - работа, перейди на Федота, а с Федота...




Оцени работу

 
Сохранить страницу:

6452. Lik_Kirill
Lik_Kirill
ответить
→  Tekashnik  # Webbot On-Line / Работа - работа, перейди на Федота, а с Федота... / 2016-04-29 02:53

Скрывать не буду, таких проблем не возникало, что страницы не загружались полностью. А если говорить про частичную загрузку, то в конкретном случае это означает что Робот может делать следующие действия, поэтому webbrowser.DocumentCompleted вполне подходит. Надо решать проблемы по мере их поступления, будут примеры, когда такие действия возникают, тогда смогу решать. Ведь можно проверять на наличие каких-либо статичных вещей на странице, например логотипа сайта или "© 2000 - 2016 Волосатов Евгений Витольдович Все права защищены.". Если они появились, то считается что страница загрузилась.


  • Отчёт оценивали:
    4004Елена+1   4467Alcatraz+1   9567Максим+1   6925Артём+1   7119Новопашин Владимир+1   689Igorenzia+1   1Евгений Витольдович+1   3506Алексей|BrisK|Кривицкий+1   6452Lik_Kirill+1   8380zhikharevav+1   4992Николай+1   1537Сергей+1   1947Denis+1   9288Pučko Antonina+1   9285Bogdaškaitė Erika+1   2146Иван+1   7645Александр Львович+1   9286Petuško Julija+1   9263Андрей Н.+1   9295Šatravka Vladislav+1  

Начинаем практику по языку C#




Чтобы стать хорошим программистом — нужно писать программы. На нашем сайте очень много практических упражнений.

После заполнения формы ты будешь подписан на рассылку «C# Вебинары и Видеоуроки», у тебя появится доступ к видеоурокам и консольным задачам.

Несколько раз в неделю тебе будут приходить письма — приглашения на вебинары, информация об акциях и скидках, полезная информация по C#.

Ты в любой момент сможешь отписаться от рассылки.
Научился: Очень понравился способ рефакторинга "mode" через enum, и занесения mode в switch - вообще нет слов! Автору респект!
Трудности: Ничего сложного
Спасибо за урок!
Научился: Научился создавать метод Rabota, добавлять таймер и проверять автоматическую работу робота.
Трудности: Сложностей нет.
Замечаний нет.