@tet-vivi вот так:
/*Dat:eyJzIjoidGV4dCIsInYiOjEsImYiOltdLCJ1dyI6IjAiLCJ1dCI6IjAiLCJ1dG8iOiIwIiwidW0iOiIwIiwiZCI6W3siaWQiOiJTYXZlVGV4dCIsInR5cGUiOiJ2YXIiLCJkYXRhIjoiU0FWRURfVEVYVCJ9XSwicCI6eyJpc19pbWFnZSI6ZmFsc2UsImNzcyI6IiA+Q1NTPiAjdGltZXItMTEwOTg2NSIsInZlcnNpb24iOiIxLjAiLCJjc3MxIjoiID5DU1M+ICN0aW1lci0xMTA5ODY1IiwiY3NzMiI6IiA+Q1NTPiBzcGFuIiwiY3NzMyI6IiIsImN1cnJlbnQiOiJjc3MiLCJtYXRjaCI6Ij5NQVRDSD48c3BhbiBpZD1cInRpbWVyLTExMDk4NjVcIj4wZCAxaCAxNm0gMjZzIDwiLCJ4cGF0aCI6IiA+WFBBVEg+IGlkKFwidGltZXItMTEwOTg2NVwiKSIsImF0IjoiMzU0LCAyODUiLCJ3ZSI6dHJ1ZSwiZmEiOnRydWV9fQ==*/ /*Browser*/ _SELECTOR = " \u003eCSS\u003e #timer-1109865"; wait_element(_SELECTOR)! get_element_selector(_SELECTOR, false).text()! VAR_SAVED_TEXT = _result() section_end()! section_start("", 238272681)! /*Dat:eyJzIjoiaWYiLCJ2IjoxLCJyb2xlIjoibWFzdGVyIiwic2xhdmUiOjgwMTI3MDg5MywibWFzdGVyIjoyMzgyNzI2ODEsImlmX3ZhciI6Il9jeWNsZV9wYXJhbXMoKS5pZl9lbHNlIiwiZiI6W10sInV3IjoiMCIsInV0IjoiMCIsInV0byI6IjAiLCJ1bSI6IjAiLCJkIjpbeyJpZCI6IklmRXhwcmVzc2lvbiIsInR5cGUiOiJjb25zdHIiLCJkYXRhIjoiW1tTQVZFRF9URVhUXV0gIT0gMCIsImNsYXNzIjoiZXhwcmVzc2lvbiJ9LHsiaWQiOiJJZkVsc2UiLCJ0eXBlIjoiY2hlY2siLCJkYXRhIjp0cnVlfV19*/ _cycle_params().if_else = VAR_SAVED_TEXT != 0; _if(_cycle_params().if_else,function(){ section_insert() })! section_end()! section_start("\u007b\u0022n\u0022:\u0022Else\u0022\u007d", 801270893)! /*Dat:eyJzIjoiaWYiLCJ2IjoxLCJyb2xlIjoic2xhdmUiLCJzbGF2ZSI6ODAxMjcwODkzLCJtYXN0ZXIiOjIzODI3MjY4MSwiaWZfdmFyIjoiX2N5Y2xlX3BhcmFtcygpLmlmX2Vsc2UiLCJmIjpbXSwidXciOiIwIiwidXQiOiIwIiwidXRvIjoiMCIsInVtIjoiMCIsImQiOlt7ImlkIjoiSWZFeHByZXNzaW9uIiwidHlwZSI6ImNvbnN0ciIsImRhdGEiOiJbW1NBVkVEX1RFWFRdXSA9IDAiLCJjbGFzcyI6ImV4cHJlc3Npb24ifSx7ImlkIjoiSWZFbHNlIiwidHlwZSI6ImNoZWNrIiwiZGF0YSI6dHJ1ZX1dfQ==*/ _if(!_cycle_params().if_else,function(){ section_insert() })! delete _cycle_params().if_else; section_end()! ```Как добавить элемент в ресурс[[переменная]]
-
@Etrus said in Как добавить элемент в ресурс[[переменная]]:
@Fox
Видимо плохо объяснил, но не работает, прикладываю скрипт, что мне надо получить. Если это можно выполнить не через выполнить код, то подскажите как, я почитаю в мануале.В упор не понимаю, что вы хотите реализовать. Может опишите изначальную задачу? Для чего вы пытаетесь такой велосипед собрать?
-
@Fox
Покупка товара в интернет магазине (али), ссылки на товар вставляются в ресурс (количество товара пока от 1 до 3). Сейчас для каждого товара прописан отдельно код, он одинаковый за исключением ссылки на товар (через if прописано выполнение кода, если есть ссылка на товар и выбор характеристик, если они есть). Хочу упростить код, используя цикл, где в "загрузить" будет вставлять ссылка на ресурс: товар 1, товар 2, товар 3. Для этого хочу, чтобы получалась ссылка на ресурс, то есть {{Товар [[Cycle Index]]}} должно для "загрузить" восприниматься как ресурс {{Товар 1}}. Может есть вариант проще для цикла, но у меня пока только такой вариант в голову пришел. -
@Etrus said in Как добавить элемент в ресурс[[переменная]]:
@Fox
Покупка товара в интернет магазине (али), ссылки на товар вставляются в ресурс (количество товара пока от 1 до 3). Сейчас для каждого товара прописан отдельно код, он одинаковый за исключением ссылки на товар (через if прописано выполнение кода, если есть ссылка на товар и выбор характеристик, если они есть).Вы используете три разных ресурса "из файла"? Зачем вообще разделять ссылки, если код у вас один?
Хочу упростить код, используя цикл, где в "загрузить" будет вставлять ссылка на ресурс: товар 1, товар 2, товар 3.
Используйте условия только для действия "Загрузить", зачем копировать весь код 3 раза?
Для этого хочу, чтобы получалась ссылка на ресурс, то есть {{Товар [[Cycle Index]]}} должно для "загрузить" восприниматься как ресурс {{Товар 1}}. Может есть вариант проще для цикла, но у меня пока только такой вариант в голову пришел.
Выше я привёл пример использования api для работы с ресурсами, но упрощать в противовес читабельности не стоит. Вы сами в последствии запутаетесь, что и как у вас в скрипте происходит
-
- Да, три ресурса, но не из файла, а из строки, туда вносится ссылка на товар. Разделять необходимо, так как товары бывают с характеристиками, которые указываются для каждого файла отдельно. Кроме того, потом информация нужна для записи значений в файл, куда еще кое какая информация записывается к каждой ссылке на товар.
- У меня два условия проверяются через if (есть ли ссылка в строке, имеет товар характеристики).
- Думал упростить код, чтобы в случае изменения на сайте меньше переделывать было.
-
@Etrus said in Как добавить элемент в ресурс[[переменная]]:
- Да, три ресурса, но не из файла, а из строки, туда вносится ссылка на товар. Разделять необходимо, так как товары бывают с характеристиками, которые указываются для каждого файла отдельно. Кроме того, потом информация нужна для записи значений в файл, куда еще кое какая информация записывается к каждой ссылке на товар.
- У меня два условия проверяются через if (есть ли ссылка в строке, имеет товар характеристики).
- Думал упростить код, чтобы в случае изменения на сайте меньше переделывать было.
Создайте список с элементами ресурсов и используйте их в цикле


В переменной [[FOREACH_DATA]] будет данные из ресурса, эту переменную вы можете проверять, загружать и использовать как душе угодно.
Тестовый скрипт
-
@Fox
Спасибо, но так можно сделать, если все товары без характеристик, то есть загрузил страницу, добавил товар в корзину и дальше по кругу. У меня реализовано через ресурсы еще выбор характеристик через if. В общем, есть ресурсы Товар 1, Товар 2, Товар 3, надо чтобы подставляемый текст такого плана: {{Товар [[CYCLE_INDEX]]}}, понимался басом в цикле как ресурс Товар 1, Товар 2, Товар 3, если так нельзя через какой-нибудь костыль сделать, то оставлю как есть. По другому, что хочу сделать не смогу, все будет завязано на подставляемой переменной [[CYCLE_INDEX]]. -
@Etrus said in Как добавить элемент в ресурс[[переменная]]:
@Fox
Спасибо, но так можно сделать, если все товары без характеристик, то есть загрузил страницу, добавил товар в корзину и дальше по кругу. У меня реализовано через ресурсы еще выбор характеристик через if. В общем, есть ресурсы Товар 1, Товар 2, Товар 3, надо чтобы подставляемый текст такого плана: {{Товар [[CYCLE_INDEX]]}}, понимался басом в цикле как ресурс Товар 1, Товар 2, Товар 3, если так нельзя через какой-нибудь костыль сделать, то оставлю как есть. По другому, что хочу сделать не смогу, все будет завязано на подставляемой переменной [[CYCLE_INDEX]].Сделать можно, но меня не покидает ощущение, что вы сами себе создаёте проблемы на пустом месте.
Действие "выполнить код"
RS("res" + [[CYCLE_INDEX]], false, false)! [[RESOURCE_]] = _result().get()
Тестовый скрипт
-
@Fox
Спасибо, то что нужно. Возможно Вы и правы, что я усложняю задачу, но если я правильн все рассчитал, то должно получиться очень компактно и удобно. Помимо Товара 1, 2, 3, есть еще Ряд 1, 2, 3. Получается, что у меня будет цикл с товарами, в котором будет еще цикл с харктеристиками. Я отпишусь, получилось ли реализовать задумку, еще раз спасибо за помощь и терпение :) -
-
Посмотрите пожалуйста проект, по проблеме из данной темы. С тех пор как все получилось, постоянно мучает один баг апи баса (кажется, это все-таки баг).
Суть работы:
Создается ресурс в каждом потоке (свой). В каждом потоке во время работы он должен постоянно сменятся (как это происходит в шаблоне в цикле while. Иногда если срабатывает нужное условие один ресурс из списка - удаляется.
Проблема:
Если переносить проблему в мой конечный шаблон, то в этом тестовом шаблоне проблема должна появится на вот таком id и написать такую ошибку (да, потоков много):
[368872499] [03:36:07] Поток №99 : Ожидаю ресурс 99
Почему я подозреваю, что это баг?:
Дело в том, что данная проблема может случится, может не случится. Чем меньше потоков - тем стабильнее работа. Иногда потоки вылетают посреди работы. Вот идет работа, скажем, несколько часов. Все работает бесперебойно. Потоки уже успевали завершаться (саксес) и заново начинать работу. И в какой-то момент потоки начинают вылетать (слово "вылетать" означает "Ожидаю ресурс").
Какой помощи я жду:
Может быть есть более эстетичный способ/код (может подредактировать есть чего) брать ресурсы по порядку по списку, но чтобы они не повторялись. В общем выполнить ту работу, которая в прикрепленном проекте выполняется в цикле while.Прикрепляю проект, который 1 в 1 повторяет основную суть проблемного проекта. Переменная месяцы просто там для примера, в конечном варианте там динамическая переменная, которая парсится с ответа (с интернета) и остается в работе до успешного завершения (саксекс). Если что, везде все выставлено "Время между использованиями: 0". Я пытался там играться. Если поставить 1 секунду или 0 разницы не будет. Там щас стоит ноль.
Тест смены ресурса в вайле.xml -
@kroda said in Как добавить элемент в ресурс[[переменная]]:
Посмотрите пожалуйста проект, по проблеме из данной темы. С тех пор как все получилось, постоянно мучает один баг апи баса (кажется, это все-таки баг).
Суть работы:
Создается ресурс в каждом потоке (свой). В каждом потоке во время работы он должен постоянно сменятся (как это происходит в шаблоне в цикле while. Иногда если срабатывает нужное условие один ресурс из списка - удаляется.
Проблема:
Если переносить проблему в мой конечный шаблон, то в этом тестовом шаблоне проблема должна появится на вот таком id и написать такую ошибку (да, потоков много):
[368872499] [03:36:07] Поток №99 : Ожидаю ресурс 99
Почему я подозреваю, что это баг?:
Дело в том, что данная проблема может случится, может не случится. Чем меньше потоков - тем стабильнее работа. Иногда потоки вылетают посреди работы. Вот идет работа, скажем, несколько часов. Все работает бесперебойно. Потоки уже успевали завершаться (саксес) и заново начинать работу. И в какой-то момент потоки начинают вылетать (слово "вылетать" означает "Ожидаю ресурс").
Какой помощи я жду:
Может быть есть более эстетичный способ/код (может подредактировать есть чего) брать ресурсы по порядку по списку, но чтобы они не повторялись. В общем выполнить ту работу, которая в прикрепленном проекте выполняется в цикле while.Прикрепляю проект, который 1 в 1 повторяет основную суть проблемного проекта. Переменная месяцы просто там для примера, в конечном варианте там динамическая переменная, которая парсится с ответа (с интернета) и остается в работе до успешного завершения (саксекс). Если что, везде все выставлено "Время между использованиями: 0". Я пытался там играться. Если поставить 1 секунду или 0 разницы не будет. Там щас стоит ноль.
Тест смены ресурса в вайле.xmlЧегось? Скрипт я посмотрел и не понял что вы хотите сделать и какая у вас при этом возникает ошибка.
-
@kroda said in Как добавить элемент в ресурс[[переменная]]:
Или новая фича:
[368872499] [16:29:20] Поток №66 : Поток завершился с сообщением "Resource get error for 66"
Можно, не знаю, например поставить? :
if was error Перезагрузка ресурсаМне дико лень разбираться в этих костылях. В разы проще и быстрее использовать объект в глобальной переменной. Тогда у каждого потока будет своё "место" с данными, которые сохраняться даже после перезапуска потока.
