Заполнение полей ФИЛЬТРА

Gerostrat

Новичок
Регистрация
07.02.2024
Сообщения
27
Благодарностей
3
Баллы
3
Коллеги добрый день,

я новичок, я посмотрел видео и стараюсь настроить парсер результатов.

Есть сайт.
с первым шагом я справился.

заходим на страницу
https://it2.rts-tender.ru/login

далее мне надо в поле ввода внести фильтр по наименованию географического название. Допустим - Дмитров.

и вот тут у меня ступор.
я нажал "конструктор действий"
ввёл слово Дмитров.
нажал кнопку "Добавить в проект"

но когда я нажимаю кнопку "Запуск проекта", то выполняется только первая часть проекта. Бот заходит на сайт. А вот слово Дмитров не вводит.

Как мне это сделать правильно ?

смотрите скриншот
 

Ribas

Client
Регистрация
31.05.2014
Сообщения
1 380
Благодарностей
467
Баллы
83
Понимаю что, возможно, это чуть выше Ваших знаний на данный момент, но всё-таки настоятельно рекомендую разобраться пару дней с работой через POST-GET запросы и парсить РТС именно так. На порядок выше стабильность и всегда предсказуемый результат. В будущем это сэкономит Вам кучу нервов и десятки часов работы.

P.S. Попробуйте в поле группа поставить -1. У Вас не находит поле с указанным элементом
 
Последнее редактирование:

Gerostrat

Новичок
Регистрация
07.02.2024
Сообщения
27
Благодарностей
3
Баллы
3
Понимаю что, возможно, это чуть выше Ваших знаний на данный момент, но всё-таки настоятельно рекомендую разобраться пару дней с работой через POST-GET запросы и парсить РТС именно так. На порядок выше стабильность и всегда предсказуемый результат. В будущем это сэкономит Вам кучу нервов и десятки часов работы.

P.S. Попробуйте в поле группа поставить -1. У Вас не находит поле с указанным элементом
а через что их парсить ?
вот нашёл в Ютубе видео Content Downloader

Но мне кажется это реально сложнее
 

Ribas

Client
Регистрация
31.05.2014
Сообщения
1 380
Благодарностей
467
Баллы
83
Через зеннопостер и парсить, только запросами. Скиньте сюда или в личку ссылку на раздел из какого парсите и какие параметры в поисковом запросе должны быть.
 

Gerostrat

Новичок
Регистрация
07.02.2024
Сообщения
27
Благодарностей
3
Баллы
3
Вот ссылка
https://it2.rts-tender.ru/dashboard/procedures

Вводим в наименование - Дмитров. Кликаем Поиск.


Из каждого найденного Лота необходимо выдернуть:
Номер процедуры, ссылку на лот, кадастровый номер, стоимость лота.

Всё это складывать в таблицу Эксель
 

Ribas

Client
Регистрация
31.05.2014
Сообщения
1 380
Благодарностей
467
Баллы
83
Вот шаб с запросом, который получает массив данных в переменную. Разбирайте её и сохраняйте в таблицу всё что необходимо. В теле запроса можно редактировать параметры поиска.
 

Вложения

  • 10,5 КБ Просмотры: 4
  • Спасибо
Реакции: Gerostrat

Gerostrat

Новичок
Регистрация
07.02.2024
Сообщения
27
Благодарностей
3
Баллы
3
Вот шаб с запросом, который получает массив данных в переменную. Разбирайте её и сохраняйте в таблицу всё что необходимо. В теле запроса можно редактировать параметры поиска.
очень благодарю, сейчас буду разбираться.
 
  • Спасибо
Реакции: Ribas

Gerostrat

Новичок
Регистрация
07.02.2024
Сообщения
27
Благодарностей
3
Баллы
3
Вот шаб с запросом, который получает массив данных в переменную. Разбирайте её и сохраняйте в таблицу всё что необходимо. В теле запроса можно редактировать параметры поиска.
у меня появились новые вопросы:
Как я понял мне надо сперва поставить счётчик с переменной 0, потом поставить ваш шаблон, затем действие Работу с Таблицей туда я вписываю данные (из вашего шаблона) в строку. затем я снова ставлю счётчик, чтобы он обнулялся. Верно?
Но вот я вроде бы сделал запись результатов в таблицу, но не могу найти эту таблицу, чтобы посмотреть результаты., какие он туда записал. А он что-то записал, потому что выполнение задачи ОК.

можете мне скинуть урок с таблицами, где и как правильно записывать данные в таблицы ?

 

Ribas

Client
Регистрация
31.05.2014
Сообщения
1 380
Благодарностей
467
Баллы
83
Перед тем как записывать в таблицу вам необходимо разобраться что записывать.
Первое действие в шаблоне - POST запрос, который я Вам отправил.
Вы получаете массив данных с результатами поиска в переменную
117628

Далее вам необходимо с помощью регулярных выражений извлечь из этого те данные которые Вам нужны в итоговой таблице и разложить их по переменным. Встроенного конструктора регулярных выражений (вызывается по F3) для этого вполне достаточно. И только после этого значения этих переменных записывать в таблицу. И так пока не обработаете все данные. Примерно так.
 

Gerostrat

Новичок
Регистрация
07.02.2024
Сообщения
27
Благодарностей
3
Баллы
3
Перед тем как записывать в таблицу вам необходимо разобраться что записывать.
Первое действие в шаблоне - POST запрос, который я Вам отправил.
Вы получаете массив данных с результатами поиска в переменную

Далее вам необходимо с помощью регулярных выражений извлечь из этого те данные которые Вам нужны в итоговой таблице и разложить их по переменным. Встроенного конструктора регулярных выражений (вызывается по F3) для этого вполне достаточно. И только после этого значения этих переменных записывать в таблицу. И так пока не обработаете все данные. Примерно так.

не понимаю, как я могу посмотреть результаты из этой переменной, вот как у вас на скрине ?

регулярные выражения это что имеется в виду ?
например, я ставлю задачу искать: Номер процедуры, ссылку на лот, кадастровый номер, стоимость лота.
далее присваиваю каждому свою переменную, например: numproc, linklot, kadnum, pricelot.
ещё вопрос, а как он будет собирать по каждому лоту ? надо значит очищать переменные, после того, как переменная отдала значения в Таблицу, чтобы она могла принять новые значения.
 

Ribas

Client
Регистрация
31.05.2014
Сообщения
1 380
Благодарностей
467
Баллы
83
Думаю Вам есть смысл изучить какой-нибудь курс по общему введению в Зеннопостер если Вы планируете в дальнейшем делать шаблоны на регулярной основе. Как вариант Курс от Ростоникса Большинство типичных вопросов там рассматривается. Либо же, если этот шаблон единичный и другие не потребуются, то разумнее заказать его реализацию у кого-то из исполнителей на данном форуме.

Зенно Вики
 

Gerostrat

Новичок
Регистрация
07.02.2024
Сообщения
27
Благодарностей
3
Баллы
3
Думаю Вам есть смысл изучить какой-нибудь курс по общему введению в Зеннопостер если Вы планируете в дальнейшем делать шаблоны на регулярной основе. Как вариант Курс от Ростоникса Большинство типичных вопросов там рассматривается. Либо же, если этот шаблон единичный и другие не потребуются, то разумнее заказать его реализацию у кого-то из исполнителей на данном форуме.

Зенно Вики
я как раз пытаюсь понять как быть.
либо уже вернуть программу и уже руками делать,
либо заказать кому-то, но смысл теряется. Если вдруг понадобится другое, то снова надо будет заказывать.
и либо самому разобраться, но это пока трудно идёт.

я как раз параллельно смотрю этот курс, который вы скинули.
 

Ribas

Client
Регистрация
31.05.2014
Сообщения
1 380
Благодарностей
467
Баллы
83
Ну скорее всего Вы в самом начале просмотра если возникли такие вопрос как
не понимаю, как я могу посмотреть результаты из этой переменной
регулярные выражения это что имеется в виду
Просмотрите курс полность, далее пробуйте. Зенно отличный инструмент, у Вас всё получится
 
  • Спасибо
Реакции: Gerostrat

Gerostrat

Новичок
Регистрация
07.02.2024
Сообщения
27
Благодарностей
3
Баллы
3
Перед тем как записывать в таблицу вам необходимо разобраться что записывать.
Первое действие в шаблоне - POST запрос, который я Вам отправил.
Вы получаете массив данных с результатами поиска в переменную

Далее вам необходимо с помощью регулярных выражений извлечь из этого те данные которые Вам нужны в итоговой таблице и разложить их по переменным. Встроенного конструктора регулярных выражений (вызывается по F3) для этого вполне достаточно. И только после этого значения этих переменных записывать в таблицу. И так пока не обработаете все данные. Примерно так.

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

я в ступоре пока.

но уже научился парсить данные обычным методом, но согласен, думаю это будет сложно, там тоже надо парсить несколько раз и тоже несколько переменных, которые потом запихивать в таблицу. т.е. получить громозкий проект. Через ПОСТ запрос будет проще.
 

Gerostrat

Новичок
Регистрация
07.02.2024
Сообщения
27
Благодарностей
3
Баллы
3
Перед тем как записывать в таблицу вам необходимо разобраться что записывать.
Первое действие в шаблоне - POST запрос, который я Вам отправил.
Вы получаете массив данных с результатами поиска в переменную

Далее вам необходимо с помощью регулярных выражений извлечь из этого те данные которые Вам нужны в итоговой таблице и разложить их по переменным. Встроенного конструктора регулярных выражений (вызывается по F3) для этого вполне достаточно. И только после этого значения этих переменных записывать в таблицу. И так пока не обработаете все данные. Примерно так.

Я разобрался с этим шагом, как посмотреть данные, которые он спарсил через запрос ПОСТ.

я нажал:
Добавить действия - данные - обработка текста
Уже в этом снипете, я в поле значение вставил Вашу переменную {-Variable.resp-} и выбрал из меню: Положить результат в список Дмтр.

В итоге смог посмотреть данные, которые он спарсил.

теперь надо разобраться, как мне выделить все данные, которые нужны.
Мне под каждые данные надо заводить отдельную переменную, верно?

Ставлю действие с переменной, куда присваиваю одно значение.

а как их потом собрать все в одно целое в таблицу, чтобы каждое значение было в отдельной ячейке ?
 

Ribas

Client
Регистрация
31.05.2014
Сообщения
1 380
Благодарностей
467
Баллы
83
Уже в этом снипете, я в поле значение вставил Вашу переменную {-Variable.resp-} и выбрал из меню: Положить результат в список Дмтр.
Просто супер что дошли до этого. Теперь смотрите.
Положить результат в список, указываете свой разделитель - "tradeId":"
В итоге получаете список, в котором 51 строка, 50 аукционов и первая строка пустая, точнее не пустая, но в ней нет данных о аукционе, удаляем её.

У нас в списке есть 50 аукционов, берём первую строку в переменную из которой будем разбирать что нам нужно вытащить.

Вытаскиваем действием - обработка текста - regex. Я показал как забрать название аукциона.

По этому же принципу забираем из этой же переменной все остальные данные которые нужны и раскладываем по переменным.

Далее записываем все эти переменные в таблицу, обнуляем их и берём следующую строку из списка. Надеюсь понятно объяснил, шаблон прикреплён.
 

Вложения

  • 19,1 КБ Просмотры: 1
  • Спасибо
Реакции: Gerostrat

Gerostrat

Новичок
Регистрация
07.02.2024
Сообщения
27
Благодарностей
3
Баллы
3
Просто супер что дошли до этого. Теперь смотрите.
Положить результат в список, указываете свой разделитель - "tradeId":"
В итоге получаете список, в котором 51 строка, 50 аукционов и первая строка пустая, точнее не пустая, но в ней нет данных о аукционе, удаляем её.

У нас в списке есть 50 аукционов, берём первую строку в переменную из которой будем разбирать что нам нужно вытащить.

Вытаскиваем действием - обработка текста - regex. Я показал как забрать название аукциона.

По этому же принципу забираем из этой же переменной все остальные данные которые нужны и раскладываем по переменным.

Далее записываем все эти переменные в таблицу, обнуляем их и берём следующую строку из списка. Надеюсь понятно объяснил, шаблон прикреплён.

Пока не понятно

вот что получилось

 

Gerostrat

Новичок
Регистрация
07.02.2024
Сообщения
27
Благодарностей
3
Баллы
3
Просто супер что дошли до этого. Теперь смотрите.
Положить результат в список, указываете свой разделитель - "tradeId":"
В итоге получаете список, в котором 51 строка, 50 аукционов и первая строка пустая, точнее не пустая, но в ней нет данных о аукционе, удаляем её.

У нас в списке есть 50 аукционов, берём первую строку в переменную из которой будем разбирать что нам нужно вытащить.

Вытаскиваем действием - обработка текста - regex. Я показал как забрать название аукциона.

По этому же принципу забираем из этой же переменной все остальные данные которые нужны и раскладываем по переменным.

Далее записываем все эти переменные в таблицу, обнуляем их и берём следующую строку из списка. Надеюсь понятно объяснил, шаблон прикреплён.

У меня список из 101 строки.
первая позиция в строке стоит под номером 0 (ноль)
а вторая позиция уже под номером 1 (один) и по видимому в этой строке данные за все аукционы, как так вышло пока не понимаю.



Дальше всё идёт, как раз как вы писали, каждая строка со своей информацией.



Хорошо, я выбрал всё что мне там надо. ( tradeNumber, tradelotName, price, fillingApplicationsEndDateTime )

я так понимаю, что мне надо удалить две строки, под цифрой 0 и 1. Иначе из 1 строки будут дублироваться данные.

Удалить строку из списка нужно через действие "Обработка текста" или "Операции над списком" ?

Завтра продолжу изучение или ближе к субботе.
 

Ribas

Client
Регистрация
31.05.2014
Сообщения
1 380
Благодарностей
467
Баллы
83
У меня список из 101 строки.
Там не могло спарсить 101 строку за один раз, скорее всего два раза запустили кубик. Запустите шаблон с начала, пусть он выполнит все действия, которые в нём есть и далее уже продолжайте разбираться.
Почистить список в Вашем случае можно следующим образом, даже если в нём очень много лишнего - операции над списком - удалить строки - не содержат текст "tradeName": - нет названия аукциона, соответственно в ячейке и самого акуциона нет, поэтому удаляем.
 

Gerostrat

Новичок
Регистрация
07.02.2024
Сообщения
27
Благодарностей
3
Баллы
3
Уважаемый Рибас, прошу помощи.
общая концепция мне стала понятна. Чтобы разобраться я пошёл своим путём и у меня есть 2 затыка/ошибки.
1. когда я делаю проект классическим способом. т.е. подгружаю сайт, там тыкаю в поле и заполняю фильтр Дмитров, то он не всегда заполняется. выскакивает ошибка. С чем это связано ?
2. в действие Regex, я вставляю сразу две регулярки для поиска нужных элементов и потом кладу в список. Он их все находит, это радует. Но он их собирает сперва "Процедуру", а потом "Описание". как мне сделать так чтобы сразу за процедурой шло описание, и далее я хочу чтобы за описанием шла цена и ссылка ?
3. могу ли я сразу добавить не в список, а в таблицу? я не вижу, как это могу сделать. вот скрин

Я не понимаю, как тут добавлять проект, поэтому добавил его в ЯДиск, по ссылке
 

Ribas

Client
Регистрация
31.05.2014
Сообщения
1 380
Благодарностей
467
Баллы
83
1. Какая ошибка?
2. Сейчас не совсем удобно посмотреть шаблон, мб только вечером.
3. Regex забирает только в список.

И всё же я не понимаю почему Вы не закончили шаблон через GET запрос и пошли по намного более проблематичному пути, там закончить оставалось - несколько действий, данные в шаблоне который я прикрепил уже были собраны, осталось разложить их в таблицу. Тем более, как я вижу, уже разобрались с тем что такое regex и списки.
 

Gerostrat

Новичок
Регистрация
07.02.2024
Сообщения
27
Благодарностей
3
Баллы
3
1. Какая ошибка?
2. Сейчас не совсем удобно посмотреть шаблон, мб только вечером.
3. Regex забирает только в список.

И всё же я не понимаю почему Вы не закончили шаблон через GET запрос и пошли по намного более проблематичному пути, там закончить оставалось - несколько действий, данные в шаблоне который я прикрепил уже были собраны, осталось разложить их в таблицу. Тем более, как я вижу, уже разобрались с тем что такое regex и списки.
1. я и сам не понимаю какая ошибка, просто не вставляет "Дмитров" в поле. - вроде пишет: не найдет элемент html
2. хорошо, подожду до вечера.
3. понял, значит буду думать, как сделать по другому.

Я очень Вам благодарен за помощь и я обязательно воспользуюсь тем что вы мне прислали. Но я "тупо" за Вами повторял. и не учился. и не понимал весь этот массив данных, просто не удобно было смотреть на сплошной текст. А тут хотя бы наглядно.
А сейчас разобрался в "regex", понял откуда берётся весь массив данных, сейчас хочу понять логику работы с данными.

Вот мне например не понятно, зачем удалять строки ? если можно регулярками всё найти то что нужно.
 

Gerostrat

Новичок
Регистрация
07.02.2024
Сообщения
27
Благодарностей
3
Баллы
3
1. Какая ошибка?
2. Сейчас не совсем удобно посмотреть шаблон, мб только вечером.
3. Regex забирает только в список.

И всё же я не понимаю почему Вы не закончили шаблон через GET запрос и пошли по намного более проблематичному пути, там закончить оставалось - несколько действий, данные в шаблоне который я прикрепил уже были собраны, осталось разложить их в таблицу. Тем более, как я вижу, уже разобрались с тем что такое regex и списки.
я сегодня ещё продвинулся.

1. сейчас размышляю, как мне переключить страницу 2, чтобы спарсить следующие 10 результатов.
2. так же думаю, как мне сделать цикл, по второй странице.
3. пока не могу придумать, как мне сразу из DOM спарсить голый кадастровый номер.

скину вам свой проект
 

Gerostrat

Новичок
Регистрация
07.02.2024
Сообщения
27
Благодарностей
3
Баллы
3
уважаемый Ribas,

ещё есть вопросы. не понимаю.

1. В вашем проекте сперва мы удаляем 1-вую строку. Ок, далее мы берём первую строку, вытаскиваем от туда имя лота (tradeName) и снова удаляем. и так проделываем постоянно, пока не будет пустоты.

Но мне же надо от туда вытащить не только ИМЯ лота (tradeName), но так же другие данные. Адрес, Цена и ещё я добавил срок Заявки.
А если в Regex, я буду ставить галочку "удалять строку после взятия", то он будет удалять только тот элемент, который нашёл или всю строку со всеми данными ?


2. Вопрос связанный с настройкой интерфэйса ,у меня постоянно куда-то окна улетают, исчезают и т.д. не понимаю, как их сделать, так же как на видео.

у меня вот так кривенько пока настроено
 

Ribas

Client
Регистрация
31.05.2014
Сообщения
1 380
Благодарностей
467
Баллы
83
Вот шаблон рабочий по тому принципу, который Вы взяли за основу. Собирает всё что нужно. Изучите его пошагово и потом переделайте шаблон под запросы. Список и таблица к файлам не привязаны.
 

Вложения

  • 38,3 КБ Просмотры: 2
  • Спасибо
Реакции: Gerostrat

Ribas

Client
Регистрация
31.05.2014
Сообщения
1 380
Благодарностей
467
Баллы
83
1. В вашем проекте сперва мы удаляем 1-вую строку. Ок, далее мы берём первую строку, вытаскиваем от туда имя лота (tradeName) и снова удаляем. и так проделываем постоянно, пока не будет пустоты.
Мы берём строку в переменную и потом извлекаем из неё все данные которые нужны - раскладываем их в другие переменные. И уже после этого берём следующую строку.
2. Если окна закрываются значит они не закреплены, есть кнопка закрепления вверху справа в каждом окне
 
  • Спасибо
Реакции: Gerostrat

Gerostrat

Новичок
Регистрация
07.02.2024
Сообщения
27
Благодарностей
3
Баллы
3
Мы берём строку в переменную и потом извлекаем из неё все данные которые нужны - раскладываем их в другие переменные. И уже после этого берём следующую строку.
2. Если окна закрываются значит они не закреплены, есть кнопка закрепления вверху справа в каждом окне
2 . по поводу окон понял, они у меня оказывается прятались друг в друга и я не могу найти, то свойства, то переменные. в общем.
Сейчас нашёл это видео, где всё рассказывали в видео уроке
.
 

Gerostrat

Новичок
Регистрация
07.02.2024
Сообщения
27
Благодарностей
3
Баллы
3
Вот шаблон рабочий по тому принципу, который Вы взяли за основу. Собирает всё что нужно. Изучите его пошагово и потом переделайте шаблон под запросы. Список и таблица к файлам не привязаны.

Ещё раз спасибо огромное за помощь.

Логику я примерно понял.
1. загружаем сайт.
2. ждём 3 секунды (почему 3 ? он же там проверяет 5 секунд)
3. идём в счётчик (вот тут не понял, что значит от 0 до меньше 5, это количество попыток? )
4. ищем текст "Процедура", я так понимаю это слово-маркер. Пока его не найдёт, то не будет перехода. Если нашёл, то значит страница загрузилась на 100%
5. записываем "Дмитров"
6. Кликаем "Поиск"
7. Берём страницу Дом (а зачем там стоит точка "Останова"? ) и кладём в переменную ОллДата
8. действие Regex не понятно: А - берём глобальную переменную Пэгс.Дом 2. парсим на предмет задоного значения ( (?<="paginator__item\ ng-star-inserted">).*?(?=</span) ). Интересно что мы тут парсим ? в. почему ищем "одно совпадение" и затем стоит цифра 5 ? г. кладём в переменную Пэгес_тотал.
9. Затем и переменной ОллДата берём текст и разделяем его lot-description__procedure-number. кладём в список Длист. (почему именно такой разделитель назначили ?)
10. из списка Длист удаляем строки 0 и 1
11. берём первую строку из списка Длист и кладём в переменную Разбор и удаляем строку после взятия.
далее идут 5 действий подряд:
12. из переменной Разбор ищем совпадения "Имя процедуры", берём первое совпадение кладём результат в переменную "Процедуру"
13. из переменной Разбор ищем "Описание Лота", берём первое совпадение кладём результат в переменную "Описание"
14. из переменной Разбор ищем "Цена", берём первое совпадение кладём результат в переменную "Цена"
15. из переменной Разбор ищем "Начало Заявки", берём первое совпадение кладём результат в переменную "Время"
16. в Таблицу, добавляем строку, пишем переменные: Процедура (Стринг,Таб) Описание (Стринг,Таб) Цена (Стринг,Таб) Время. - напомните пожалуйста, Стринг.Таб разделяет по столбцам, если правильно помню. Затем мы возвращаемся обратно к пункту 11.

Вот тут я не понимаю, как алгоритм в пункте 11 понимает, что ему надо уходить по пунктирной стрелке на логику "Увеличить счётчик на 1" ?
Дальше тоже не понимаю про счётчики: что значит увеличить счётчик переменной на 1 ? и почему дальше мы пишем вот так: {-Variable.pagenumber-} > {-Variable.pages_total-} ? т.е. если Номер_Страницы больше на чем Номеров_Всего, то ставим на Паузу или как понять ? а если нет, то переходим в алгоритм где переменная куда:Value Тэг:input:number - Не очень понятно, как это работает. почему эта конструкция у нас всегда срабатывает, как переключение следующей страницы ?

дальше вроде бы понятно.

Можете мне подсказать или кинуть ролик, как мне из таблицы запихнуть данные в мою таблицу, в приготовленный файл. Я пока не понял этого. Видимо пропустил это в роликах.

P.S. я могу как-то отблагодарить Вас за помощь?
 
Последнее редактирование:

Ribas

Client
Регистрация
31.05.2014
Сообщения
1 380
Благодарностей
467
Баллы
83
2. ждём 3 секунды (почему 3 ? он же там проверяет 5 секунд)
3. идём в счётчик (вот тут не понял, что значит от 0 до меньше 5, это количество попыток? )
Этот блок ждёт в цикле 5 раз по 3 секунды итого 15 секунд на первоначальную загрузку страницы

4. ищем текст "Процедура", я так понимаю это слово-маркер. Пока его не найдёт, то не будет перехода. Если нашёл, то значит страница загрузилась на 100%
Всё правильно, самая простая проверка загрузки страницы

5. записываем "Дмитров"
6. Кликаем "Поиск"
7. Берём страницу Дом (а зачем там стоит точка "Останова"? ) и кладём в переменную ОллДата
Всё правильно. Точка останова нужна для отладки во время разработки шаблона, она работает только в ProjectMaker

8. действие Regex не понятно: А - берём глобальную переменную Пэгс.Дом 2. парсим на предмет задоного значения ( (?<="paginator__item\ ng-star-inserted">).*?(?=</span) ). Интересно что мы тут парсим ? в. почему ищем "одно совпадение" и затем стоит цифра 5 ? г. кладём в переменную Пэгес_тотал.
Мы берём количество страниц в результатах поиска. Чтобы потом перебором собрать данные именно с такого количества страниц. На пятом совпадении находится именно оно. (Тут надо проследить чтобы это всегда срабатывало в дальнейшем)

9. Затем и переменной ОллДата берём текст и разделяем его lot-description__procedure-number. кладём в список Длист. (почему именно такой разделитель назначили ?)
Чтобы не заморачиваться, перед каждой процедурой идёт именно этот текст

далее идут 5 действий подряд:
12. из переменной Разбор ищем совпадения "Имя процедуры", берём первое совпадение кладём результат в переменную "Процедуру"
13. из переменной Разбор ищем "Описание Лота", берём первое совпадение кладём результат в переменную "Описание"
14. из переменной Разбор ищем "Цена", берём первое совпадение кладём результат в переменную "Цена"
15. из переменной Разбор ищем "Начало Заявки", берём первое совпадение кладём результат в переменную "Время"
16. в Таблицу, добавляем строку, пишем переменные: Процедура (Стринг,Таб) Описание (Стринг,Таб) Цена (Стринг,Таб) Время. - напомните пожалуйста, Стринг.Таб разделяет по столбцам, если правильно помню. Затем мы возвращаемся обратно к пункту 11.

Вот тут я не понимаю, как алгоритм в пункте 11 понимает, что ему надо уходить по пунктирной стрелке на логику "Увеличить счётчик на 1" ?
Всё верно. Берётся строка из списка с удалением, разбирается, снова берётся строка. Если при попытке взять строку список уже пустой - то это действие вызывает ошибку. Потому что список пустой. Следовательно по ветке ошибки переходим к увеличению счётчика страниц. Именно там пригодится переменная которую парсили в начале, в кажой итерации проверяем не больше ли переменная от итогового количества страниц.

Там идёт логика следующая - мы вносим значение следующей страницы в поле внизу под процедурами и нажимаем на кнопку перехода на след. страницу. Далее обрабатываем страницу также как предыдущую и так работаем по кругу пока значение переменной в которой лежит номет текущей страницы не станет больше чем значение итогового количества страниц.

P.S. я могу как-то отблагодарить Вас за помощь?
Можете конечно, в телеграме контакт https://t.me/azaliss
 

Gerostrat

Новичок
Регистрация
07.02.2024
Сообщения
27
Благодарностей
3
Баллы
3
Этот блок ждёт в цикле 5 раз по 3 секунды итого 15 секунд на первоначальную загрузку страницы


Всё правильно, самая простая проверка загрузки страницы



Всё правильно. Точка останова нужна для отладки во время разработки шаблона, она работает только в ProjectMaker


Мы берём количество страниц в результатах поиска. Чтобы потом перебором собрать данные именно с такого количества страниц. На пятом совпадении находится именно оно. (Тут надо проследить чтобы это всегда срабатывало в дальнейшем)


Чтобы не заморачиваться, перед каждой процедурой идёт именно этот текст


Всё верно. Берётся строка из списка с удалением, разбирается, снова берётся строка. Если при попытке взять строку список уже пустой - то это действие вызывает ошибку. Потому что список пустой. Следовательно по ветке ошибки переходим к увеличению счётчика страниц. Именно там пригодится переменная которую парсили в начале, в кажой итерации проверяем не больше ли переменная от итогового количества страниц.

Там идёт логика следующая - мы вносим значение следующей страницы в поле внизу под процедурами и нажимаем на кнопку перехода на след. страницу. Далее обрабатываем страницу также как предыдущую и так работаем по кругу пока значение переменной в которой лежит номет текущей страницы не станет больше чем значение итогового количества страниц.


Можете конечно, в телеграме контакт https://t.me/azaliss

* Можете мне подсказать или кинуть ролик, как мне из таблицы запихнуть данные в мою таблицу, в приготовленный файл. Я пока не понял этого. Видимо пропустил это в роликах.

это я уже дописал вдогонку так сказать, но вы уже ответили на предыдущие вопросы ))
 

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