1

Тема: AHK: Авторизация на форуме [WinHttpRequest]

Снова здравствуйте. Для начала, необходимо сделать авторизацию на форуме samp-rp.su. Именно через WinHttpRequest, IE меня не устраивает.

Всё, что я писал дальше этого, стыдно даже показывать. Буду благодарен за помощь.

url := "http://samp-rp.su/ucp.php?mode=login"
login := "log"
password := "pass"
WebRequest := ComObjCreate("WinHttp.WinHttpRequest.5.1")
WebRequest.Open("GET", url)
WebRequest.Send()

2

Re: AHK: Авторизация на форуме [WinHttpRequest]

url := "http://samp-rp.su/ucp.php?mode=login"
login := "log"
password := "pass"
WebRequest := ComObjCreate("WinHttp.WinHttpRequest.5.1")
WebRequest.Open("GET", url)
WebRequest.Send()
Sid := RegexReplace(WebRequest.getAllResponseHeaders(), "s).*sid=(.+?);.*","$1")
WebRequest.Open("POST", url)
WebRequest.SetRequestHeader("Content-Type", "application/x-www-form-urlencoded")
Data := "username=" login "&password=" password "&sid=" sid "&login="
WebRequest.Send(data)
If Instr(WebRequest.ResponseText, "Вы успешно вошли в систему")
   msgbox Залогинились

3

Re: AHK: Авторизация на форуме [WinHttpRequest]

Malcev, спасибо, хотел вот ещё тему создать, но ничего не выходит, не поможете? Данные от форумного аккаунта реальны, можете использовать, так как ему разрешено создавать темы.

url := "http://samp-rp.su/ucp.php?mode=login"
urltop := "http://samp-rp.su/posting.php?mode=post&f=94"
login := "gdnhdszs"
password := "qwerty1ASD"
top1 := "111"
top2 := "222"
WebRequest := ComObjCreate("WinHttp.WinHttpRequest.5.1")
WebRequest.Open("GET", url)
WebRequest.Send()
Sid := RegexReplace(WebRequest.getAllResponseHeaders(), "s).*sid=(.+?);.*","$1")
WebRequest.Open("POST", url)
WebRequest.SetRequestHeader("Content-Type", "application/x-www-form-urlencoded")
Data := "username=" login "&password=" password "&sid=" sid "&login="
WebRequest.Send(data)
If Instr(WebRequest.ResponseText, "Вы успешно вошли в систему")
{
   MsgBox Залогинились
   goto nex
   }else{
   MsgBox, Неверные данные
   return
}
nex:
WebRequest.Open("GET", urltop)
WebRequest.Send()
WebRequest.Open("POST", urltop)
WebRequest.SetRequestHeader("Content-Type", "application/x-www-form-urlencoded")
Data2 := "subject=" top1 "&message=" top2
WebRequest.Send(data2)
If Instr(WebRequest.ResponseText, "Сообщение было успешно отправлено")
{
   MsgBox Отправлено
   }else{
   MsgBox, Ошибка
   return
}

4

Re: AHK: Авторизация на форуме [WinHttpRequest]

А зачем вам?

5

Re: AHK: Авторизация на форуме [WinHttpRequest]

В дополнение к моему скрипту. Он должен авторизовываться на форуме, создавать тему и в последствии редактировать её. С IE всё довольно просто, но мне придется использовать только теги, поэтому я боюсь "кликнуть" куда-нибудь не туда и случайно удалить что-то с форума.

6

Re: AHK: Авторизация на форуме [WinHttpRequest]

Изучайте:
https://autohotkey.com/boards/viewtopic.php?t=7647

7

Re: AHK: Авторизация на форуме [WinHttpRequest]

Malcev, постараюсь понять, спасибо.