Что нового

Авторизация через POST-запрос

sipik

Новичок
Сообщения
1
Репутация
0
Пытаюсь авторизоваться на сайте по адресу: http://smart-lab.ru/login/

Авторизационная форма - привожу ниже, и еще, чтобы удобнее было читать - прикрепил скриншот.

Код:
<form action="http://smart-lab.ru/login/" method="POST" enctype="multipart/form-data"><h3>Авторизация</h3><div class="lite-note"><a href="http://smart-lab.ru/registration/">Регистрация</a><label for="login-input">Логин или эл. почта</label></div><p><input type="text" class="input-text" name="login" tabindex="1" id="login-input"/></p><div class="lite-note"><a href="http://smart-lab.ru/login/reminder/" tabindex="-1">Напомнить пароль</a><label for="password-input">Пароль</label></div><p><input type="password" name="password" class="input-text" tabindex="2" id="password-input"/></p><div class="lite-note"><button type="submit" class="button"><span><em>Войти</em></span></button><label for="" class="input-checkbox"><input type="checkbox" name="remember" checked tabindex="3" >Запомнить меня</label></div><input type="hidden" name="submit_login"></form>


Код:
$sEmail="мой логин"
$sPass="мой пароль"
$url="http://smart-lab.ru/login/"

Func login()

$oHTTP = ObjCreate("WinHttp.WinHttpRequest.5.1")
;Отправляем POST запрос
$oHTTP.Open("POST",$url)
$oHTTP.setTimeouts(5000, 5000, 15000, 15000)
$oHTTP.SetRequestHeader("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8")
$oHTTP.SetRequestHeader("Accept-Language", "ru-ru,ru;q=0.8,en-us;q=0.5,en;q=0.3")
$oHTTP.SetRequestHeader("Referer","http://smart-lab.ru")
$oHTTP.SetRequestHeader("Content-Type","text/html; charset=utf-8")
$oHTTP.SetRequestHeader("User-Agent", "Mozilla/5.0 (Windows NT 6.1; rv:6.0) Gecko/20100101 Firefox/6.0")
$oHTTP.SetRequestHeader("Host","smart-lab.ru")
$oHTTP.SetRequestHeader("Proxy-Connection", "Keep-alive")
;Передаем логин-пароль
$oHTTP.Send('login='&$sEmail&'&password='&$sPass)
$oHTTP.WaitForResponse

$resp=$oHTTP.ResponseText
;вывожу ответ сервера в файл
;FileWrite("d:\console.html", $resp)
EndFunc

login()



По результатам авторизации не происходит - в ответе от сервера получаю неавторизованную страничку: http://smart-lab.ru/login/

Не знаю, может быть не все данные, которые необходимы отправляю через POST-форму. Подскажите, отцы.
 

dwerf

Использует ArchLinux
Сообщения
478
Репутация
219
Методом тыка:
Код:
$oHTTP.SetRequestHeader('Content-Type', 'application/x-www-form-urlencoded')


PS
Любые отрывки AutoIt кода необходимо заключать в тег
Код:
 

kaster

Мой Аватар, он лучший самый
Команда форума
Глобальный модератор
Сообщения
4,020
Репутация
626
Верх