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

Я хочу создать цикл while, который проверяет, выводится ли на экран сообщение об ошибке. Я проверяю, можно ли взять текущее имя, и если нет, то я что-то делаю, а если есть, то делаю другое. Я хочу, чтобы он сказал что-то вроде, пока на экране отображается «Имя пользователя уже занято», он будет делать одно, и если он не появляется на экране, он просто пропускает цикл while.

Когда появляется сообщение об ошибке:

<p id="username_notification" class="notification" style="">Username has already been taken</p>

Также xpath, если это необходимо:

//*[@id="username_notification"]

Также, вероятно, не требуется, но вот сообщение, если имя пользователя можно использовать:

<p id="username_notification" class="notification" style="">Available! 
</p>

И xpath для этого:

//*[@id="username_notification"]

Это также, вероятно, очевидно, но я новичок в Python и кодировании в целом. Спасибо!

0
0
37
1

Ответы 1

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

Я предполагаю, что вам нужен цикл while для тестирования до тех пор, пока один из элементов <p> с id = "username_notification" не будет управлять задержкой между вводом имени пользователя сценарием и ответом сервера при проверке доступности.

Я предполагаю, что элемент <p> будет вставлен в DOM в предсказуемом месте и всегда будет иметь id = "username_notification".

Итак, вам нужен цикл while True, который очищает страницу, проверяет тот или иной из элементов <p>, при обнаружении одного из них он прерывается условно в зависимости от того, какой из них он находит для дискретных функций, например, на повторное «Имя пользователя уже занято». введите новое имя пользователя или "Доступно!" сделай что-нибудь еще ...

Но я не уверен, в чем ваша проблема с его реализацией. Что ты пробовал?

Другие вопросы по теме