Как подождать пока не появиться данные для парсинга?

art22

Client
Регистрация
24.06.2016
Сообщения
484
Благодарностей
69
Баллы
28
есть определенный цикл который парсит данные.. в одном окне надо ждать, пока окно появиться, потом начать парсить. у меня сразу начинает парсить...но окна еще нет.
Как сделать чтобы подождал окна или первого значения... который парсится потом начать парсинг!
 

Jeronimo

Client
Регистрация
07.01.2014
Сообщения
236
Благодарностей
205
Баллы
43
Если я правильно понял, то можно просто добавить экшн If и в нём прописать проверку наличия в переменной или в списке любой записи (если есть, то активируем запуск второго цикла).
 
  • Спасибо
Реакции: art22

evgen2208

Client
Регистрация
12.10.2016
Сообщения
130
Благодарностей
162
Баллы
43
У Ростоникса в курсе (который на ютубе выложен) было про это.


Код:
//атрибуты окна которого нужно дождаться
var he = instance.ActiveTab.FindElementByAttribute("tag","attrName","attrValue","search",number);

for (int i=0;i<10;i++) //10 - время ожидания элемента
{
    if (he.IsVoid) Thread.Sleep(1000);
}
 
  • Спасибо
Реакции: art22

doc

Client
Регистрация
30.03.2012
Сообщения
8 684
Благодарностей
4 641
Баллы
113
в любом экшене взаимодействия с объектами страницы (rise, set, get) во второй вкладке можно установить время ожидания. Найди объект, который символизирует появление данных и по нему ориентируйся
 

art22

Client
Регистрация
24.06.2016
Сообщения
484
Благодарностей
69
Баллы
28
Если я правильно понял, то можно просто добавить экшн If и в нём прописать проверку наличия в переменной или в списке любой записи (если есть, то активируем запуск второго цикла).
Сделал немного по колхозский но работает. Как сделать чтобы ждал? '{-Variable.Variable32-}'!=' '

У Ростоникса в курсе (который на ютубе выложен) было про это.
посмотрю как найду не работал с кодами еще не знаю как

прицепился к тексту на странице парсинга. теперь надо сделать чтобы ждал как это сделать?

сделал 2 проверки и они циклируют друг друга пока не найдется текст
 

Вложения

doc

Client
Регистрация
30.03.2012
Сообщения
8 684
Благодарностей
4 641
Баллы
113
Сделал немного по колхозский но работает. Как сделать чтобы ждал? '{-Variable.Variable32-}'!=' '



посмотрю как найду не работал с кодами еще не знаю как


прицепился к тексту на странице парсинга. теперь надо сделать чтобы ждал как это сделать?

сделал 2 проверки и они циклируют друг друга пока не найдется текст


"Ждать элемент не более..."
 
  • Спасибо
Реакции: art22

one

Client
Регистрация
22.09.2015
Сообщения
6 833
Благодарностей
1 275
Баллы
113
Я бы сделал цикл. Крутил бы по кругу пока нужный обьект к которому надо приципиться не появиться.
 
  • Спасибо
Реакции: art22

art22

Client
Регистрация
24.06.2016
Сообщения
484
Благодарностей
69
Баллы
28
Я бы сделал цикл.
ждать надо будет от 1 сек до 10 минут. лучше подойдет цикл тогда. чтобы сильно не загрузить можно секунд 5 подкинуть между циклом. Оставлю значит как есть.

А вот во время регистрации или открывании страницы он ждет пока полностью не загружается, жаль что джаву не понимает... Спасибо всем

п. с. может кто скажет где найти список адресов Москвы с номерами домамов!?)
 

one

Client
Регистрация
22.09.2015
Сообщения
6 833
Благодарностей
1 275
Баллы
113
А вот во время регистрации или открывании страницы он ждет пока полностью не загружается,
Я использую в таких случаях такой простой сниппет:
Код:
instance.ActiveTab.WaitDownloading();
Вставлять после экшена переход на страницу.
 

evgen2208

Client
Регистрация
12.10.2016
Сообщения
130
Благодарностей
162
Баллы
43
ждать надо будет от 1 сек до 10 минут. лучше подойдет цикл тогда. чтобы сильно не загрузить можно секунд 5 подкинуть между циклом. Оставлю значит как есть.
тогда код как нельзя лучше подходит под эту задачу.
10 меняешь на 600 будет максимум 600 секунд (10 минут). Когда нужный элемент находится - процесс идет дальше, без ожидания полного времени

Вставлять после экшена переход на страницу.
Экшен перехода на страницу итак ждет пока страница не загрузится.
У него скорее всего элемент подгружается скриптами, иначе и проблемы бы не возникло - кубики сами всё отработали.
 

one

Client
Регистрация
22.09.2015
Сообщения
6 833
Благодарностей
1 275
Баллы
113

evgen2208

Client
Регистрация
12.10.2016
Сообщения
130
Благодарностей
162
Баллы
43
Не всегда в случае когда скрипты подтягиваются после загрузки страницы.
) и я об этом же.
только instance.ActiveTab.WaitDownloading(); ждет пока инстанс освободится (зеленый значек появится в PM). Если элементы еще догружаются скриптами (а сайт уже сообщил что типа страница загружена всё ОК) их надо отдельно отлавливать. этот метод не сработает.
 

Кто просматривает тему: (Всего: 0, Пользователи: 0, Гости: 0)