Полезная информация

Хотите узнать больше о расширениях? Посмотрите ролики, рассказывающие о работе с расширениями Firefox.

iMacros » iMacros for Firefox - общие вопросы, обсуждение возможностей (часть 2) » 15-01-2024 20:34:45

Здравствуйте! Подскажите как с помощью регулярных выражений извлечь число которое идёт первым? Оно может быть от 5 чисел до 7. То есть из текста с числами я извлекаю примерно такую комбинацию чисел с помощью регулярного выражения

iimGetLastExtract().match(/\d+/g);

и получается следующее:

483279,4,2411,2,0,14,2024,01,15,20,21,43,15,01,24,8,21

Теперь надо как-то взять первое число 483279, оно в данном случае из 6-ти чисел. Но может быть и из 5-ти и из 7-ми. Подскажите каким регулярным выражением лучше всего извлекать в данном случае?

15-01-2024 21:03:44
Уже сам разобрался. С помощью квантификатора.  Для того, чтобы найти числа от 5 до 7 цифр, мы можем указать границы в фигурных скобках: \d{5,7}

iMacros » iMacros for Firefox - общие вопросы, обсуждение возможностей (часть 2) » 25-01-2023 00:18:18

Алим пишет

Он у вас при извлечении выделяет весь текст содержимого или только первую строчку?

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

PS а вот со счетчиком циклов, который бы останавливался после определенного количества искомых фраз, пока затык. То что вы написали выше, так и не работает.

iMacros » iMacros for Firefox - общие вопросы, обсуждение возможностей (часть 2) » 06-12-2022 05:10:08

JamesGoodwin пишет
Denzar пишет

Это регулярное выражение, что вы прислали, не работает. Точнее удаляет лишнее вместе с паролем, оставляя только слово wildexpress.

Что это? Хоть бы текст какой написали. Нифига не понятно.
Если получится, запишу видео, где наглядно и чётко видно как это регулярное выражение, что вы написали, извлекает из текста вместо пароля слово wildexpress.

iMacros » iMacros for Firefox - общие вопросы, обсуждение возможностей (часть 2) » 05-12-2022 20:04:14

JamesGoodwin пишет
Denzar пишет
JamesGoodwin пишет
Выделить код

Код:

iimGetLastExtract().match(/(?=.*?[a-zA-Z])(?=.*?\d)[a-zA-Z\d]+/);

Ух как тут наворочено! Спасибо, что откликнулись! Эх, если б этот код ещё и то, что надо извлекал... Но увы, он извлекает не пароль, а второе слово по счёту - wildexpress :(

А что это за сайт/ресурс? Это конструктор регулярных выражений? А как им пользоваться? Может у меня получилось бы, если б знал как им пользоваться. А так-то это регулярное выражение, что вы прислали, не работает. Точнее удаляет лишнее вместе с паролем, оставляя только слово wildexpress. Так что тут надо дальше думать (мне) как правильно сделать/написать регулярное выражение, чтоб удаляло всё лишнее кроме пароля.

iMacros » iMacros for Firefox - общие вопросы, обсуждение возможностей (часть 2) » 05-12-2022 17:18:43

JamesGoodwin пишет
Выделить код

Код:

iimGetLastExtract().match(/(?=.*?[a-zA-Z])(?=.*?\d)[a-zA-Z\d]+/);

Ух как тут наворочено! Спасибо, что откликнулись! Эх, если б этот код ещё и то, что надо извлекал... Но увы, он извлекает не пароль, а второе слово по счёту - wildexpress :(

iMacros » iMacros for Firefox - общие вопросы, обсуждение возможностей (часть 2) » 04-12-2022 22:18:57

Здравствуйте! Люди, подскажите пожалуйста какую команду надо применить чтоб извлечь из текста пароль буквенно-числовой?

Вот такой текст

Выделить код

Код:

Входящее - wildexpress (Контакт не определен)
Текст сообщения: j9gu5 (04.12.22 20:57)

Извлекать тут надо j9gu5 .
Вот так выглядит:

скрытый текст
GEEZnun.png

Что здесь лучше применить? Ведь тут и числа и буквы в одном пароле. Команда типа iimGetLastExtract().match(/\d+/g);  не годится, тут надо что-то иное. Но что конкретно, подскажите, кто в теме.

iMacros » iMacros for Firefox - общие вопросы, обсуждение возможностей (часть 2) » 25-11-2022 17:04:05

Алим пишет

Denzar
Скрипт три раза проверяет текст на совпадение и если три раза воспало, то прирывает цикл.
Как он у вас работает?

Он продолжает гнать 100 раз без остановки. После 3-х раз ничего не прерывается.

25-11-2022 17:06:15
Явно этот счётчик кривой. Ведь даже InfSub обратил на это внимание, вот его цитата:

InfSub пишет

Алимусловия для переменной "y" пишутся в параметрах цикла for(y = 0; y <= 3; y++){}иначе используется while(true){}

iMacros » iMacros for Firefox - общие вопросы, обсуждение возможностей (часть 2) » 03-11-2022 14:23:37

Алим пишет

Denzar

скрытый текст

Выделить код

Код:

for(i=1;i<=100;i++){

iimPlayCode('URL GOTO=https://forum.mozilla-russia.org/');

var y = 0
for(;;){
if(iimPlayCode('SET !TIMEOUT_STEP 1\nTAG POS=1 TYPE=SPAN ATTR=TXT:Полезная<SP>информация')>0){
y++
if(3 == y){break}
}
iimPlayCode('WAIT SECONDS=1')
}

}

Исправил. Человеческий фактор.

Так а всё равно ж ничего не изменилось. Как не работало, так и не работает.
Вы его хоть проверяли на работоспособность или так написали и выложили? )))

iMacros » iMacros for Firefox - общие вопросы, обсуждение возможностей (часть 2) » 20-09-2022 16:01:04

Алим пишет

Denzar

скрытый текст

Выделить код

Код:

for(i=1;i<=100;i++){

iimPlayCode('URL GOTO=https://forum.mozilla-russia.org/');

var y = 0
for(;;){
if(iimPlayCode('SET !TIMEOUT_STEP 1\nTAG POS=1 TYPE=SPAN ATTR=TXT:Полезная<SP>информация')>0){
if(3 == y){
y++
break
}
}
iimPlayCode('WAIT SECONDS=1')
}

}

А как этот скрипт работает? Он же не останавливается после 3 раз считывания искомой фразы. Что-то я вообще не понял что это за скрипт получился. Он точно правильный?:/

iMacros » iMacros for Firefox - общие вопросы, обсуждение возможностей (часть 2) » 31-08-2022 12:50:27

Здравствуйте! Подскажите как написать простой счётчик в цикле для определенной фразы? То есть, работает скрипт в цикле и при нахождении на странице определенной фразы останавливается. Но не сразу надо, а только после определенного количества повторов появления этой фразы. Вот простой пример скрипта, надо там только счётчик как-то добавить

скрытый текст

Выделить код

Код:

for(i=1; i<=100; i++){ 
   iimPlayCode('URL GOTO=https://forum.mozilla-russia.org/'); 
 f=iimPlayCode('TAG POS=1 TYPE=SPAN ATTR=TXT:Полезная<SP>информация'); if(f>0) 
 // тут должен быть счётчик для данной фразы //
  break; 
 }


То есть надо так сделать, чтоб только после 3-х раз появления на странице фразы "Полезная информация" срабатывала команда break

31-08-2022 12:59:08
Или может это неправильное направление? Подскажите, может есть вариант проще и лучше, чтоб остановить цикл скрипта при условии если за время работы будет найдена определенная фраза заданное количество раз?

iMacros » iMacros for Firefox - общие вопросы, обсуждение возможностей (часть 2) » 25-07-2022 14:59:12

Denzar пишет

Если использовать такой код,

скрытый текст

Выделить код

Код:

iimPlayCode('TAG POS=1 TYPE=DIV ATTR=TXT:СМС<SP>от:<SP>YahooДата<SP>СМС:* EXTRACT=TXT'); q=iimGetLastExtract().match(/\d+/g); 
iimPlayCode('TAG POS=1 TYPE=TEXTAREA FORM=NAME:qrf ATTR=NAME:body CONTENT='+q);


то выдаст числа с запятыми
скрытый текст

код здесь из себя представляет последнее 5-тизначное число, оно-то и надо. Но как его извлечь отдельно?

Нашёл решение как извлечь отдельно. Это делается с помощью квантификаторов. Примерно так:

Выделить код

Код:

alert( "25,2022,10,17,02,78644".match(/\d{5}/) );

Но теперь осталась загвоздка как числа в кавычках заменить на переменную q

[spoiler=почти готовый код][code]     
iimPlayCode('TAG POS=1 TYPE=DIV ATTR=TXT:СМС<SP>от:<SP>YahooKДата<SP>СМС:* EXTRACT=TXT'); q=iimGetLastExtract().match(/\d+/g);
iimPlayCode('TAG POS=1 TYPE=TEXTAREA FORM=NAME:qrf ATTR=NAME:body CONTENT='+q);
alert( "25,2022,10,17

iMacros » iMacros for Firefox - общие вопросы, обсуждение возможностей (часть 2) » 25-07-2022 13:57:12

Если использовать такой код,

скрытый текст

Выделить код

Код:

iimPlayCode('TAG POS=1 TYPE=DIV ATTR=TXT:СМС<SP>от:<SP>YahooДата<SP>СМС:* EXTRACT=TXT'); q=iimGetLastExtract().match(/\d+/g); 
iimPlayCode('TAG POS=1 TYPE=TEXTAREA FORM=NAME:qrf ATTR=NAME:body CONTENT='+q);


то выдаст числа с запятыми
скрытый текст
njsFSHG.png

код здесь из себя представляет последнее 5-тизначное число, оно-то и надо. Но как его извлечь отдельно?

iMacros » iMacros for Firefox - общие вопросы, обсуждение возможностей (часть 2) » 25-07-2022 05:33:54

Здравствуйте! Помогите пожалуйста подкорректировать команду извлекающую код из текста.

Вот такой текст
ZYWDIxb.png

Нужен только код подтверждения. Но при использовании  команды q=iimGetExtract().match(/\d+/g).join(''); оно все числа из текста извлекает, получается так:

скрытый текст
PiDwcUR.png

А надо извлечь только последние 6 чисел, которые и есть код.
Как можно это решить, подскажите пожалуйста?

iMacros » iMacros for Firefox - общие вопросы, обсуждение возможностей (часть 2) » 18-06-2022 18:22:13

PRESIDENT пишет

Приветствую тех немногих, кто ещё тут бывает.

Приветствую! Я как раз один из тех кто тут ещё бывает. Столкнулся с казалось бы простой, но в то же время непонятной задачей: на сайте при вводе пароля приходится использовать для записи скрипта режим EVENT (потому что при обычном способе записи/ввода пароля оно не срабатывает). Ну да это ладно, EVENT так EVENT. Но прикол в том, что даже при использовании команды EVENT пароль по нормальному срабатывает только когда браузер развёрнут. А если браузер свернуть, то тогда при работе скрипта при вводе пароля и нажатии ввод оно пишет "некорректный пароль". Приходится постоянно держать браузер открытым (развёрнутым), тогда всё норм работает. Но это оооочень неудобно. Вот как это побороть? непонятно

iMacros » iMacros for Firefox - общие вопросы, обсуждение возможностей (часть 2) » 26-01-2022 22:34:27

На сайте Нагибаки нашёл вроде то, что надо

скрытый текст
r3NrWSF.png

Но так и не понял, а как там в файл текст сохранять тот, который надо, а не то, что записано в кавычках ("текст для сохранения"). Подскажите, как этим скриптом нужный текст для сохранения добавлять? Например на странице сайте есть текст который надо сохранить. Как его этим скриптом сохранять?

iMacros » iMacros for Firefox - общие вопросы, обсуждение возможностей (часть 2) » 26-01-2022 14:15:14

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

скрытый текст

Выделить код

Код:

iimPlayCode('TAG POS=1 TYPE=DD ATTR=TXT:* EXTRACT=TXT\nSAVEAS TYPE=EXTRACT FOLDER=* FILE=numer.txt');


а можно ли как-то сохранять, чтоб старое удалялось при сохранении нового?

iMacros » iMacros for Firefox - общие вопросы, обсуждение возможностей (часть 2) » 23-01-2022 18:26:30

InfSub

Ух ты! Классно! Работает! Спасибо большое!
Я и сам уже так и этак пробовал, нашёл на сайте регулярные выражения, вот тут:

скрытый текст
VUXjHwG.png
но что-то так и не получалось самому разобраться. То есть я там пробовал применять большую D, а надо было маленькую d.
В общем оказывается вон как надо было. Спасибо!

iMacros » iMacros for Firefox - общие вопросы, обсуждение возможностей (часть 2) » 23-01-2022 15:04:11

Здравствуйте! Подскажите как вырезать всё лишнее которое сохраняется с помощью этого кода:

скрытый текст

Выделить код

Код:

var iP=iimPlayCode, f1='FRAME NAME=ifmail;

    iP(f1+'TAG POS=1 TYPE=STRONG ATTR=TXT:Please<SP>enter<SP>the<SP>following<SP>code<SP>* EXTRACT=TXT'); a=iimGetLastExtract(); 
alert(+a);


Сохраняет вот что:
скрытый текст
BMb6XHj.png

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

iMacros » iMacros for Firefox - общие вопросы, обсуждение возможностей (часть 2) » 07-10-2021 07:17:16

PRESIDENT пишет

Если его один раз запускаешь окно выбора открывается

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


код загружающий страницу сайта в новой вкладке браузера

Выделить код

Код:

TAB CLOSEALLOTHERS
TAB OPEN
TAB T=2
TAB T=1
TAB CLOSE
WAIT SECONDS=2
CLEAR
URL GOTO=https://www.aliexpress.com/item/4001297334567.html
TAG POS=1 TYPE=A ATTR=HREF:javascript:void(0)
WAIT SECONDS=1
TAG POS=1 TYPE=A ATTR=DATA-ROLE:country
WAIT SECONDS=1
TAG POS=1 TYPE=li ATTR=data-name:"Belarus" 
WAIT SECONDS=2
TAG POS=1 TYPE=BUTTON ATTR=TYPE:button


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

iMacros » iMacros for Firefox - общие вопросы, обсуждение возможностей (часть 2) » 06-10-2021 21:15:35

PRESIDENT пишет

Я не знаю чем тебе этот код не угодил
у меня всё прекрасно отрабатывает

тут ссылка на видео, специально записанное с экрана, как работает этот код.
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


Вот сам код
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


PS видео лучше скачать и глядеть на компе в оригинале. На яндекс-диске оно воспроизводится не очень качественно.


PPS попробуй пожалуйста воспроизвести у себя этот код. Там всего лишь добавлена команда CLEAR и ссылка на сайт Али по которой надо переходить.
 
PPPS команда CLEAR в начале кода обязательна!

Выделить код

Код:

CLEAR
URL GOTO=https://www.aliexpress.com/item/4001297334567.html
TAG POS=1 TYPE=A ATTR=HREF:javascript:void(0)
WAIT SECONDS=1
TAG POS=1 TYPE=A ATTR=DATA-ROLE:country
WAIT SECONDS=1
TAG POS=1 TYPE=li ATTR=data-name:"Belarus" 
WAIT SECONDS=2
TAG POS=1 TYPE=BUTTON ATTR=TYPE:button

iMacros » iMacros for Firefox - общие вопросы, обсуждение возможностей (часть 2) » 06-10-2021 10:37:16

А может стоит применить функцию имитации мыши? Есть такая, нашёл в интернете.

Функция имитации мыши

Выделить код

Код:

/***-= Функция имитации мыши =-***/
function triggerMouseEvent (node, eventType) {
    var clickEvent = window.document.createEvent ('MouseEvents');
    clickEvent.initEvent (eventType, true, true);
    node.dispatchEvent (clickEvent);
}


Может с её помощью было бы полноценное нажатие на выпадающий список стран/языков/валют и этот список раскрылся бы? Или вряд ли?
А для чего вообще применяется такая функция имитации мыши, если казалось бы, можно просто нажимать на нужный элемент/селектор? И можно ли вообще эту функцию задействовать в нашем случае для нажатия на список, чтоб он открывался?

iMacros » iMacros for Firefox - общие вопросы, обсуждение возможностей (часть 2) » 05-10-2021 18:50:12

Squatter Спасибо огромное! Всё получилось! Работает как надо!

PS Не. Всё равно не так как надо. Приходится всё равно открывать выпадающий список стран и нажимать там кнопку SAVE. И когда страница после этого перезагрузится, то купон становится таким номиналом какой есть на самом деле. Поэтому тут мне всё же желательнее было бы такой код в ява-скрипте, который бы нажимал так, чтоб выпадающее окно со списком стран всё таки выпадало. Но как это сделать... непонятно :(

iMacros » iMacros for Firefox - общие вопросы, обсуждение возможностей (часть 2) » 05-10-2021 12:10:40

Вот этот код в принципе рабочий

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=A ATTR=HREF:javascript:void(0)


но он не открывает выпадающий список стран если сам по себе в аймакросе работает. А вот если до того как страница обновилась, нажать или просто провести мышью по странице сайта, то тогда список выпадающих стран раскрывается от этой команды.
А как сделать так, чтоб список стран выпадал только от работы аймакроса... непонятно

iMacros » iMacros for Firefox - общие вопросы, обсуждение возможностей (часть 2) » 04-10-2021 23:17:55

PRESIDENT пишет

Попробуй так

Выделить код

Код:

TAG POS=1 TYPE=A ATTR=HREF:javascript:void(0)
WAIT SECONDS=1
TAG POS=1 TYPE=A ATTR=DATA-ROLE:country
WAIT SECONDS=1
TAG POS=1 TYPE=li ATTR=data-name:"Belarus" 

'TAG POS=1 TYPE=li ATTR=data-code:"by"

Попробовал, не получается все равно, не раскрывается выпадающий список. Однако есть такой нюанс (он и раньше был), когда работает скрипт, когда страница почти загрузилась и в этот момент нажать в ручную мышью куда нибудь на страницу (только не на ссылку, чтоб по ней не перейти), то после этого, когда страница загрузится и далее скрипт нажимает на список выпадающих стран, то этот список выпадает и страны открываются, можно их выбирать. Но если вручную мышью не клацать, то список стран так и не открывается чисто скриптом.
То есть тут я так понимаю это связано с работой ява-скриптов которые в самом исходном коде страницы сайта алиэкспресс. Конкретно с вот этим HREF:javascript:void(0). Вот у тебя он в самой первой строке п

Board footer

Powered by PunBB
Modified by Mozilla Russia
Copyright © 2004–2020 Mozilla Russia GitHub mark
Язык отображения форума: [Русский] [English]