Текст есть в коде и только иногда появляется на странице. Как проверить его наличие на странице?

byhgalter

Новичок
Регистрация
01.11.2014
Сообщения
7
Благодарностей
0
Баллы
1
Приветствую всех. Я полный новичок и пишу свой первый шаблон - регистратор почты.

Я столкнулся со следующей проблемой:

Иногда логин, который я формирую, бывает занят в почтовом сервисе. То есть на странице регистрации, после ввода логина в соответствующее поле, сразу же отображается надпись "К сожалению, логин занят".

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

Так вот. Я делаю Tabs --> Data --> Take DOM и выбираю чекбокс Parse result и вставляю туда регулярное выражение, которое ищет текст.

Как видно из названия, независимо от того, уникальный логин прописан в поле или неуникальный, текст "К сожалению, логин занят" присутствует в коде страницы в любом случае. И только когда прописан неуникальный логин, этот текст появляется на странице. Но даже когда текст визуально есть на странице либо его нету, операция Tabs --> Data --> Take DOM и выбираю чекбокс Parse result в любом случае его находит, поскольку он есть в коде.

Вопрос: Как проверить наличие этого текста именно на странице, а не в коде?

Пробовал вместо Take DOM выбирать другие опции экшина Data. не помогает. Программа все равно парсит именно код страницы, а не то, что фактически на ней отображается.

Также пробовал выделять текст и правой кнопкой нажимать Create check for text presence. Тоже самое.

Также пробовал вытаскивать в переменную текст путем Article Extraction. И в этом случае, как на зло, как раз этот кусок текста не копируется.

Помогите новичку с этим камнем преткновения. Заранее спасибо.
 

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
22 494
Благодарностей
10 032
Баллы
113
а если искать с помощью Tabs --> Data --> Take Text, то тоже находит?
по идее - не должно..
если ничего не помогает, тогда надо искать атрибут hidden в блоке текста, который проверяется, и если установлен hidden, то соответственно логин уникальный, если не hidden, то логин занят..
 
  • Спасибо
Реакции: byhgalter

byhgalter

Новичок
Регистрация
01.11.2014
Сообщения
7
Благодарностей
0
Баллы
1
а если искать с помощью Tabs --> Data --> Take Text

Так тоже находит. Он так тоже текст из кода берет, а не с визуальной страницы.

Спасибо за подсказку. Буду пробовать.
 

byhgalter

Новичок
Регистрация
01.11.2014
Сообщения
7
Благодарностей
0
Баллы
1
Спасибо за подсказку. Она помогла. Только пришлось еще отключить яваскрипт. Потому что этот текст как раз отображался через яваскрипт и имел один и тот же код в обоих случаях: когда отображался и когда нет.
После отключения яваскрипт, код стал разным.
 

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
22 494
Благодарностей
10 032
Баллы
113
Спасибо за подсказку. Она помогла. Только пришлось еще отключить яваскрипт. Потому что этот текст как раз отображался через яваскрипт и имел один и тот же код в обоих случаях: когда отображался и когда нет.
После отключения яваскрипт, код стал разным.
если яваскрипт отключать, то отключается сама возможность проверять логин на уник..
ну если работает так, то классно..
а вообще, странно..
видимо процедура проверки не на аякс (яваскрипт) работает..
 

byhgalter

Новичок
Регистрация
01.11.2014
Сообщения
7
Благодарностей
0
Баллы
1
После отключения яваскрипт, логин не проверяется в реальном времени. Я перенес проверку после нажатия кнопки регистрации.
 

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