TypeError: Result of expression 'c._Break' [undefined] is not a function.
-
Ошибка Поток завершился с сообщением "TypeError: Result of expression 'c._Break' [undefined] is not a function. Номер строки:108 Во время выполнения скрипта _next()"
Почему выбивает ошибку? ([[SAVED_TEXTBODY1]]) > (0) на этом месте
Сменил ее на (([[SAVED_TEXTBODY1]]).length) > (0) все равно ошибка...
В режиме записи все работает отлично
Все переменные получаются хорошо. Данные от ВК АПИ в формате Json вроде
-
Эм, название темы "Помогите с регуляркой", где тут регулярка?
([[SAVED_TEXTBODY1]]) > (0)
Это ты где вписывал? В IF, или в Выполнить код?
В IF надо[[SAVED_TEXTBODY1]] > 0
И что ты именно хочешь получить? Ведь переменная SAVED_TEXTBODY сохраняет текст страницы, зачем его сравнивать с нулём?
-
@Fox
1.Вписал в IF
2.Получаю переменную такой регуляркой
Если больше нуля, значит вылезла каптча и нужно ее разгадать
(function(){var rs = []; var r = /"captcha_sid":"?(\d*)/gm; var s = [[SAVED_TEXTBODY]]; var m; var i = -1; while(m = r.exec(s)){if(i == m.index) break; i = m.index; rs.push((m.length>1) ? m[1] : m[0]);} return rs;})()
-
-
@35xakers Я пока другим занят, скинь пример кода, так быстрее разберусь.
-
@Fox пример ответа от АПИ
{"error":{"error_code":14,"error_msg":"Captcha needed","request_params":[{"key":"oauth","value":"1"},{"key":"method","value":"friends.add"},{"key":"user_id","value":"1"}],"captcha_sid":"943836746330","captcha_img":"https:\/\/api.vk.com\/captcha.php?sid=943836746330&s=1"}}
Потом проверяю есть ли тут captcha_sid и записываю в переменную SAVED_TEXTBODY1
(function(){var rs = []; var r = /"captcha_sid":"*(\/d*)"*/gm; var s = [[SAVED_TEXTBODY]]; var m; var i = -1; while(m = r.exec(s)){if(i == m.index) break; i = m.index; rs.push((m.length>1) ? m[1] : m[0]);} return rs;})()
Потом пытаюсь проверить SAVED_TEXTBODY1 > 0 и сразу ошибка,
Или может по другому как то скинуть? проект большой просто, пытаюсь понятнее
-
@Fox 0_1495372773683_пример.xml
Прикрепил проект
-
@35xakers Только открыл проект.
IF сработает если:[[SAVED_TEXTBODY1]].length>0
Но это означает только что переменная SAVED_TEXTBODY1 не пустая.
Я так понимаю проект тестовый, но тебе же можно было всё проще реализовать.Подходит ли строка под регулярное выражение
"captcha_img":"(.*?)"
IF
[[STRING_MATCHES]] == true
Первое вхождение
"captcha_img":"(.*?)"
А результат можешь поставить в Решить капчу
-
@Fox можно подробнее пожалуйста?) что то вообще не понял))
Просто АПИ выдает 2 текста, один в примере, а другой рандомный с кол-вом лайков, вот и вытаскиваю есть ли каптча. Там не просто проверка идет на пустой или нет, а на идентификатор каптчи. Если он есть то потом iF проходит, если нет не проходит. Но вот iF у меня не проходит, баг что в теме пишет хоть усрись, вообще не пойму в чем дело.
У тебя мой тестовый проект кстати нормально отработал в режиме запуска или тоже баг?
-
можно подробнее пожалуйста?) что то вообще не понял))
[[SAVED_TEXTBODY1]] - это строка, вы хотите проверить не пустая ли она, тогда нужно взять ее длину вот так
[[SAVED_TEXTBODY1]].length
и проверить чтоб длина была больше 0
[[SAVED_TEXTBODY1]].length > 0
Тогда как в проекте
[[SAVED_TEXTBODY1]].length > 0.length //неправильно
Второе - этот код
(function(){var rs = []; var r = /"captcha_img":"*(.*)"\}\}*/gm; var s = [[SAVED_TEXTBODY]]; var m; var i = -1; while(m = r.exec(s)){if(i == m.index) break; i = m.index; rs.push((m.length>1) ? m[1] : m[0]);} return rs;})()
В нем тоже есть какая-то ошибка, но не могу сказать какая.
Если вы хотите применить регулярное выражение к строке, то лучше использовать действие "Первое вхождение", как предлагает @Fox