Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

Winhttp próba naciśnięcia przycisku


jamajkasnk

Rekomendowane odpowiedzi

Opublikowano

Witam wszystkich :)
Od jakiegoś czasu bawię się winhttp i mam problem odnośnie naciśnięcia button'a (atakuj)

1. Zbadanie firebug kodu HTML:
 

<a class="btn" href="/arena/attack/1/60032580/">
<span class="end">
<span class="label">Atak</span>
</span>

 
użyłem funkcji stringa po wcześniejszym zastosowaniu live http

 

http://tiwar.pl/arena/'>http://tiwar.pl/arena/

GET /arena/ HTTP/1.1
Host: tiwar.pl
User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:32.0) Gecko/20100101 Firefox/32.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: pl,en-US;q=0.7,en;q=0.3
Accept-Encoding: gzip, deflate
Referer: http://tiwar.pl/
Cookie: login=341483%3A7433f9e877220912d69042313b52fa37; PHPSESSID=fecc22313321351eb08d5166f129e36a
Connection: keep-alive

----------------------------------------------------------
http://c.waplog.net/515670.cnt

GET /515670.cnt HTTP/1.1
Host: c.waplog.net
User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:32.0) Gecko/20100101 Firefox/32.0
Accept: image/png,image/*;q=0.8,*/*;q=0.5
Accept-Language: pl,en-US;q=0.7,en;q=0.3
Accept-Encoding: gzip, deflate
Referer: http://tiwar.pl/arena/'>http://tiwar.pl/arena/
Cookie: waplog=1821527578
Connection: keep-alive

----------------------------------------------------------
http://tiwar.pl/arena/'>http://tiwar.pl/arena/attack/1/4449529/

GET /arena/attack/1/4449529/ HTTP/1.1
Host: tiwar.pl
User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:32.0) Gecko/20100101 Firefox/32.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: pl,en-US;q=0.7,en;q=0.3
Accept-Encoding: gzip, deflate
Referer: http://tiwar.pl/arena/'>http://tiwar.pl/arena/
Cookie: login=341483%3A7433f9e877220912d69042313b52fa37; PHPSESSID=fecc22313321351eb08d5166f129e36a
Connection: keep-alive


----------------------------------------------------------

----------------------------------------------------------
http://c.waplog.net/515670.cnt

GET /515670.cnt HTTP/1.1
Host: c.waplog.net
User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:32.0) Gecko/20100101 Firefox/32.0
Accept: image/png,image/*;q=0.8,*/*;q=0.5
Accept-Language: pl,en-US;q=0.7,en;q=0.3
Accept-Encoding: gzip, deflate
Referer: http://tiwar.pl/arena/'>http://tiwar.pl/arena/attack/1/4449529/
Cookie: waplog=1821527578
Connection: keep-alive

HTTP/1.0 200 OK
Content-Type: image/gif
Date: Wed, 01 Oct 2014 21:18:51 GMT
Expires: Thu, 01 Jan 1970 00:00:01 GMT
Cache-Control: no-cache, must-revalidate
Pragma: no-cache
Content-Length: 203
X-Cache: MISS from plus.ds14.agh.edu.pl
X-Cache-Lookup: MISS from plus.ds14.agh.edu.pl:3128
Via: 1.0 plus.ds14.agh.edu.pl:3128 (squid)
Connection: keep-alive
----------------------------------------------------------

kod mojego programu:

#include "WinHTTP.au3";wlaczamy biblie
#include <WinHTTP.au3>
#include <string.au3>
#include <array.au3>

$handlewinhttp = _WinHttpOpen("User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:32.0) Gecko/20100101 Firefox/32.0"); uruchamiamy usluge
for $i = 1 to 5
consolewrite($i & " Proba logowania" & @CRLF)
if login("asdf","asdf") then ExitLoop
consolewrite("Niepowiedziona" & @crlf)
Next
Do
Do
$ahas= szukanietokenu()
if $ahas=0 Then
   for $i=1 to 5
   consolewrite($i & " Proba logowania" & @CRLF)
if login("asdf","asdf") then ExitLoop
consolewrite("Niepowiedziona" & @crlf)
Next
EndIf
Until $ahas
if $ahas Then consolewrite("Udalo nam sie pobrac token " & $ahas & @CRLF)
Until uruchomprace($ahas)
ConsoleWrite ("uruchomilismy prace")

func login($login,$haslo)
$connect = _WinHttpConnect($handlewinhttp, "http://tiwar.pl"); laczymy sie
$zapytanie = _WinHttpOpenRequest($connect, "POST", "/");otwieramy zapytaniePOST HTTP/1.1
_WinHttpAddRequestHeaders($zapytanie, "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8")
_WinHttpAddRequestHeaders($zapytanie, "Accept-Language: pl,en-us;q=0.7,en;q=0.3")
_WinHttpAddRequestHeaders($zapytanie, "Connection: keep-alive")
_WinHttpAddRequestHeaders($zapytanie, "Content-Type: application/x-www-form-urlencoded")
_WinHttpSendRequest($zapytanie, Default, "tiwar.pl&login=xxx&pass=xxx")
_WinHttpReceiveResponse($zapytanie)
$data = ""
Do
$data &= _WinHttpReadData($zapytanie, 0)
Until @
return stringinstr($data,"Ustawienia")
EndFunc

func szukanietokenu()
   $connect = _WinHttpConnect($handlewinhttp, "tiwar.pl"); laczymy sie
  $zapytanie = _WinHttpOpenRequest($connect, "GET", "/arena/")
_WinHttpAddRequestHeaders($zapytanie, "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8")
_WinHttpAddRequestHeaders($zapytanie, "Accept-Language: pl,en-us;q=0.7,en;q=0.3")
_WinHttpAddRequestHeaders($zapytanie, "Connection: keep-alive")
_WinHttpAddRequestHeaders($zapytanie, "Referer: http://tiwar.pl/arena")
_WinHttpSendRequest($zapytanie)
_WinHttpReceiveResponse($zapytanie)
$data = ""
Do
$data &= _WinHttpReadData($zapytanie, 0)
Until @
FileDelete(@ScriptDir & 'token.html')
FileWrite(@ScriptDir & '/token.html', $data)
$token = _stringbetween($data,"/arena/attack/1/","/")
if IsArray($token) Then
   Return $token[0]
Else
   Return 0
   EndIf
EndFunc

func uruchomprace($token)
$connect = _WinHttpConnect($handlewinhttp, "tiwar.pl"); laczymy sie
$zapytanie = _WinHttpOpenRequest($connect, "POST", "/arena/attack/1/" & $token);otwieramy zapytanie
_WinHttpAddRequestHeaders($zapytanie, "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8")
_WinHttpAddRequestHeaders($zapytanie, "Accept-Language: pl,en-us;q=0.7,en;q=0.3")
_WinHttpAddRequestHeaders($zapytanie, "Connection: keep-alive")
_WinHttpAddRequestHeaders($zapytanie, "Referer: http://tiwar.pl/arena")
_WinHttpReceiveResponse($zapytanie)
$data = ""
Do
$data &= _WinHttpReadData($zapytanie, 0)
Until @

if stringinstr($data,"Dotychczasowy czas pracy") Then
   return 1
Else
return 0
EndIf
EndFunc

Niestety ale program się zapętla i zostaje na wyświetleniu tekstu że znalazł tokena ale nie podejmuje działania. Czy jest jakaś dobra dusza, która pomogła by mi, albo przynajmniej naprowadziła na na błąd ?
Pozdrawiam.

P.S. jak dodać spoiler ?:D

Opublikowano

Na winhttp się nie znam, ale chyba spoiler robi się tak:

[spoiler]
//txt
[/spoiler]
Cytat

That is not dead which can eternal lie. And with strange aeons even death may die.

 

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...