Почему не нажимается кнопка?

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

Вот я и думаю, ошибка при передаче события click или при снятии скриншота ?

https://github.com/boskiv/iq-bot
Кнопка, на которую я пытаюсь нажать, button[ng-click="login()"]

Я уже 3 день документации читаю, если кто-нибудь подскажет, куда копать - буду благодарен, а то уже глаз замылился.

P.S. попробуй сейчас еще обработчик событий добавить, посмотрю, что там.
  • Вопрос задан
  • 2779 просмотров
Решения вопроса 1
BoSKiv
@BoSKiv Автор вопроса
ДевОпс
Добавил обработчик ошибок на клиентской стороне. Теперь стало чуть понятней, но все равно требуется помошь :) Видимо не хватает каких то скриптов:
skivan@ip-10-73-204-189:~/iq$ casperjs casper.coffee 
[info] [phantom] Using testhost: http://iqoption.com
[info] [phantom] Starting...
[info] [phantom] Running suite: 7 steps
[debug] [phantom] Automatically injected includes/jquery.min.js client side
[debug] [phantom] Automatically injected includes/app.js client side
[debug] [phantom] Automatically injected includes/jquery.cookie.js client side
[debug] [phantom] Successfully injected Casper client-side utilities
[debug] [phantom] start page is loaded
[info] [phantom] Step _step 3/7 https://iqoption.com/ (HTTP 200)
[info] [phantom] Step _step 3/7: done in 1487ms.
remote message caught: TypeError: 'undefined' is not a function (evaluating '$.url()')
    at https://static.iqoption.com//javascript/app.js?v=629f634f932553b6f8e6f7a06b0f0176:1
    at https://static.iqoption.com//javascript/app.js?v=629f634f932553b6f8e6f7a06b0f0176:1
    at https://static.iqoption.com//javascript/vendor.js?v=e598584bfb63a0373939a0d3ced116be:10935
    ...
remote message caught: TypeError: 'undefined' is not a function (evaluating 'e.als({circular:"yes"})')
    at https://static.iqoption.com//javascript/app.js?v=629f634f932553b6f8e6f7a06b0f0176:2
    at https://static.iqoption.com//javascript/vendor.js?v=e598584bfb63a0373939a0d3ced116be:10887
    ...
    at https://static.iqoption.com//javascript/vendor.js?v=e598584bfb63a0373939a0d3ced116be:12119
    at https://static.iqoption.com//javascript/vendor.js?v=e598584bfb63a0373939a0d3ced116be:12766 <div class="als-container ng-isolate-scope" id="my-als-list">
[info] [phantom] waitFor() finished in 671ms.
[info] [phantom] Step anonymous 4/7 https://iqoption.com/us (HTTP 200)
remote message caught: Clicking to button
remote message caught: TypeError: 'undefined' is not a function (evaluating 'e.parent.scope()')
    at e (https://static.iqoption.com//javascript/app.js?v=629f634f932553b6f8e6f7a06b0f0176:1)
    at https://static.iqoption.com//javascript/app.js?v=629f634f932553b6f8e6f7a06b0f0176:1
    at https://static.iqoption.com//javascript/app.js?v=629f634f932553b6f8e6f7a06b0f0176:1
    at https://static.iqoption.com//javascript/app.js?v=629f634f932553b6f8e6f7a06b0f0176:1
    at https://static.iqoption.com//javascript/vendor.js?v=e598584bfb63a0373939a0d3ced116be:10994
    at https://static.iqoption.com//javascript/vendor.js?v=e598584bfb63a0373939a0d3ced116be:11952
    at https://static.iqoption.com//javascript/vendor.js?v=e598584bfb63a0373939a0d3ced116be:10933
    at https://static.iqoption.com//javascript/vendor.js?v=e598584bfb63a0373939a0d3ced116be:10933
    at https://static.iqoption.com//javascript/vendor.js?v=e598584bfb63a0373939a0d3ced116be:11952
    at https://static.iqoption.com//javascript/vendor.js?v=e598584bfb63a0373939a0d3ced116be:4676
    at https://static.iqoption.com//javascript/vendor.js?v=e598584bfb63a0373939a0d3ced116be:4360
[info] [phantom] Step anonymous 4/7: done in 2726ms.
[info] [phantom] Step _step 5/7 https://iqoption.com/us (HTTP 200)
[info] [phantom] Step _step 5/7: done in 2750ms.
[warning] [phantom] Casper.waitFor() timeout
[debug] [phantom] Capturing page to /home/skivan/iq/timeout.png
[info] [phantom] Capture saved to /home/skivan/iq/timeout.png
[info] [phantom] Step anonymous 6/7 https://iqoption.com/us (HTTP 200)
[debug] [phantom] Mouse event 'mousedown' on selector: button[ng-click="login()"]
[debug] [phantom] Mouse event 'mouseup' on selector: button[ng-click="login()"]
[debug] [phantom] Mouse event 'click' on selector: button[ng-click="login()"]
remote message caught: TypeError: 'undefined' is not a function (evaluating 'e.parent.scope()')
    at e (https://static.iqoption.com//javascript/app.js?v=629f634f932553b6f8e6f7a06b0f0176:1)
    at https://static.iqoption.com//javascript/app.js?v=629f634f932553b6f8e6f7a06b0f0176:1
    at https://static.iqoption.com//javascript/app.js?v=629f634f932553b6f8e6f7a06b0f0176:1
    at https://static.iqoption.com//javascript/app.js?v=629f634f932553b6f8e6f7a06b0f0176:1
    at https://static.iqoption.com//javascript/vendor.js?v=e598584bfb63a0373939a0d3ced116be:10994
    at https://static.iqoption.com//javascript/vendor.js?v=e598584bfb63a0373939a0d3ced116be:11952
    at https://static.iqoption.com//javascript/vendor.js?v=e598584bfb63a0373939a0d3ced116be:10933
    at https://static.iqoption.com//javascript/vendor.js?v=e598584bfb63a0373939a0d3ced116be:10933
    at https://static.iqoption.com//javascript/vendor.js?v=e598584bfb63a0373939a0d3ced116be:11952
    at https://static.iqoption.com//javascript/vendor.js?v=e598584bfb63a0373939a0d3ced116be:4676
    at https://static.iqoption.com//javascript/vendor.js?v=e598584bfb63a0373939a0d3ced116be:4360
[info] [phantom] Step anonymous 6/7: done in 8637ms.
[info] [phantom] Step anonymous 7/7 https://iqoption.com/us (HTTP 200)
[debug] [phantom] Capturing page to /home/skivan/iq/page.png
[info] [phantom] Capture saved to /home/skivan/iq/page.png
[info] [phantom] Step anonymous 7/7: done in 9436ms.
[info] [phantom] Done 7 steps in 9437ms
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
maxaon
@maxaon
Делать $rootScope.login - крайне неправильное поведение. Не знаю что и как там у вас, но этот код должен находится в контроллере. На крайний случай - в сервисе.
Ошибка, по-видимому, из-за того, что какая-либо директива создала изолированную область видимости и в ней нет функции login.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы