PDA

Показать полную графическую версию : [решено] залогиниться на сайте Megafon


corbis
11-09-2015, 15:27
$login = "login"
$password = "pwd"
$url = "https://lk.megafon.ru/login/"

$IE = New-Object -ComObject InternetExplorer.Application
$IE.Navigate($url)

While ($IE.Busy)
{ Start-Sleep -Milliseconds 100 }
$doc = $ie.document

$usernameField = $doc.getElementById('j_username')
$usernameField.value = $username
$passwordField = $doc.getElementById('j_password')
$passwordField.value = $password
# Ищем кнопку
$submitButton = $doc.getElementById('submit-button')
$submitButton.click()

Код работает ровно до поиска кнопки. Т.к. Id у этой кнопки нет. И непонятно как к ней обратиться.
Может можно как-то отправить нажатие Enter?
В общем, help

Kazun
11-09-2015, 16:17
$ie.Document.Forms.Item(0).getElementsByClassName("ui-button-but").Item(0).click()

Для PSv2:
$ie.Document.Forms | %{$_.getElementsByClassName("ui-button-but")} | % {$_.Click()}

corbis
11-09-2015, 19:42
Кнопка найдена! Ура. Только click не срабатывает. Пока с клавиатуры что-нибудь не введено, кнопка не активна.

Эмуляция клика мышки и эмуляция нажатия клавиш клавиатуры сработала.
Но для реального варианта не подходит.

Iska
11-09-2015, 22:54
Кнопка найдена! Ура. Только click не срабатывает. Пока с клавиатуры что-нибудь не введено, кнопка не активна. »
Так она ж у Вас disabled (http://htmlbook.ru/html/input/disabled) изначально.

corbis
12-09-2015, 11:25
Так она ж у Вас disabled изначально. »

Что с этим можно сделать?

Iska
12-09-2015, 12:39
Что с этим можно сделать? »
Попробовать тупо сменить это свойство (если сие в принципе возможно, я не ковырял справочник). Разобраться где и когда это свойство меняется в оригинальном коде по изменению содержимого полей INPUT и сделать аналогично.

Kazun
12-09-2015, 12:40
Попробовать:
$class = $doc.body.getElementsByClassName("ui-button ui-button-submit ui-button-disabled login-form-submit")
$class.Item(0).className = "ui-button ui-button-submit login-form-submit"

corbis
12-09-2015, 22:01
Это магия..

Спасибо.




© OSzone.net 2001-2012