@Сайман условия не замедлят скрипт. Разве что на доли секунд. В режиме "запуска" все отработает очень быстро.
В программировании это называется микрооптимзиациями - экономить 0.001 секунду не имеет смысла.
Условия проверяются чуть ли не моментально. Наоборот предпочтительнее делать много услови (IF, ELSE), чтобы обрабатывать ошибки и непредвиденные ситуации.
Насчет символа " ", я уже писал, что BAS преобразует его в неразрывный пробел. И что XPATCH, что MATCH пути могут преобразовывать его в "неразрывный пробел". Именно поэтому в тестовом скрипте я записывал в переменную код страницы и после проверял нужных тег с нужным значением. Часто код в 100 строк может работать быстрее кода в 10 строк. Нужно просто понимать на что уходит время (на запуск браузера, рендеринг, полную прогрузку страницы и т.д.). А проверить 10000 условий и сделать 1000 переменных ты можешь и за 0.01 секунды.
Ну а если кнопка и правда "появляется периодически, а не загружается вместе с первоначальным кодом страницы" (в чем я очень сомневаюсь), то в любом случае придется делать какую-нибудь задержку и только потом проверять кнопку. А если и правда капчи нет, то самое восхитительное решение - это переписать весь скрипт на запросы (использовать HTTP-клиент с GET/POST запросами вместо браузера). Ну здесь уже придется вникать, не знаю насколько легко/тяжело это будет человеку, который никак не связан с IT.