|
You last visited: Today at 13:55
Advertisement
[Question/Request]{WinHttp} - Login
Discussion on [Question/Request]{WinHttp} - Login within the AutoIt forum part of the Coders Den category.
02/16/2012, 16:48
|
#1
|
ベトナム警察
elite*gold: 725
Join Date: Jan 2012
Posts: 16,397
Received Thanks: 3,432
|
[Question/Request]{WinHttp} - Login
Habe mir früher ein Login Script für Elitepvpers gemacht, aber login ging ja nicht und deswegen wollte ich nun fragen, wie ich den Login machen kann.
Natürlich habe ich das auch mit Live Http Headers gemacht.
Habe auch schon viele Login Scripts bei anderen Homepages gemacht, aber nur bei Elitepvpers geht das nicht. s:
Und noch eine Frage....
Warum kommt bei mir hier ein Error ?
Code:
$aReturn = StringRegExp($sHTML, '<span class="gold">(\d+?)', 3)
GUICtrlSetData($List1, "elite*Gold: " & $aReturn[0])
Wollte das er das e*Gold danach ausliest. ^^
Oder muss statt (\d+?) was anderes rein ?
Mein Ganzer script. ;3
Code:
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <GUIListBox.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#include <WinHttp.au3>
#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Form1", 252, 297, 192, 124)
$Label1 = GUICtrlCreateLabel("Benutzername", 8, 8, 72, 17)
$Label2 = GUICtrlCreateLabel("Passwort", 32, 32, 47, 17)
$Input1 = GUICtrlCreateInput("", 96, 8, 121, 21)
$Input2 = GUICtrlCreateInput("", 96, 32, 121, 21)
$Button1 = GUICtrlCreateButton("elite*Gold abfragen", 56, 120, 131, 25)
$Button2 = GUICtrlCreateButton("Login", 80, 64, 75, 25)
$List1 = GUICtrlCreateList("", 8, 152, 233, 136)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $Button1
Login()
Case $Button2
GoldAbfrage()
EndSwitch
WEnd
Func Login()
$hSession = _WinHttpOpen("Mozilla/5.0 (Windows NT 6.0; rv:10.0.1) Gecko/20100101 Firefox/10.0.1")
$hConnect = _WinHttpConnect($hSession, "www.elitepvpers.com")
$sHTML = _WinHttpSimpleRequest($hConnect, "GET", "forum/" )
$sHTML = _WinHttpSimpleRequest($hConnect, "POST", "forum/login.php?do=login", "", "vb_login_username=" & GUICtrlRead($Input1) & "&vb_login_password=" & GUICtrlRead($Input2) & "&cookieuser=1&s=&securitytoken=guest&do=login&vb_login_md5password=&vb_login_md5password_utf=")
EndFunc
Func GoldAbfrage()
$hSession = _WinHttpOpen("Mozilla/5.0 (Windows NT 6.0; rv:10.0.1) Gecko/20100101 Firefox/10.0.1")
$hConnect = _WinHttpConnect($hSession, "www.elitepvpers.com")
$sHTML = _WinHttpSimpleRequest($hConnect, "GET", "forum/" )
$sHTML = _WinHttpSimpleRequest($hConnect, "POST", "forum/login.php?do=login", "", "vb_login_username=" & GUICtrlRead($Input1) & "&vb_login_password=" & GUICtrlRead($Input2) & "&cookieuser=1&s=&securitytoken=guest&do=login&vb_login_md5password=&vb_login_md5password_utf=")
$aReturn = StringRegExp($sHTML, '<span class="gold">(\d+?)', 3)
GUICtrlSetData($List1, "elite*Gold: " & $aReturn[0])
EndFunc
|
|
|
02/16/2012, 18:17
|
#2
|
elite*gold: 235
Join Date: Jan 2012
Posts: 920
Received Thanks: 377
|
Zur ersten Frage:
Warum geht es nicht ?
Kommen Fehler oder passiert einfach nichts ?
Zur zweiten:
Was führ Fehler kommen, denn an den zwei Zeilen ist nichts Falsch !?
|
|
|
02/16/2012, 18:34
|
#3
|
ベトナム警察
elite*gold: 725
Join Date: Jan 2012
Posts: 16,397
Received Thanks: 3,432
|
Brauche noch Hilfe für Login und elite*Gold ausleser.
|
|
|
02/16/2012, 19:00
|
#4
|
elite*gold: 235
Join Date: Jan 2012
Posts: 920
Received Thanks: 377
|
Zu 1:
Das ist eig. ganz einfach und zwar kommt ja nach dem erfolgreichen LogIn eine Seite wo in etwas das steht "Sie wurden erfolgreich eingeloggt" diesen Text müsste man dann halt im Quelltext auslesen und wenn er nicht vorhanden ist sondern die Webseite mit dem Error kommt wurdest du halt nicht erfolgreich eingeloggt.
Zu 2:
Die Befehle sind richtig es muss also an der Quelle liegen.
Schick mir mal bitte das Script
|
|
|
02/16/2012, 19:59
|
#5
|
elite*gold: 0
Join Date: Mar 2009
Posts: 2,317
Received Thanks: 1,254
|
Quote:
Originally Posted by Lumi'
Wer mein Script haben will, soll sich dann melden. o:
|
Oder noch besser:
Wenn du von uns Hilfe erwartest, poste dein Script!
Klaut schon keiner!
|
|
|
02/16/2012, 20:24
|
#6
|
ベトナム警察
elite*gold: 725
Join Date: Jan 2012
Posts: 16,397
Received Thanks: 3,432
|
Hab es rein editiert. ^^
Hoffe auf hilfreiche Antworten.
|
|
|
02/16/2012, 20:50
|
#7
|
elite*gold: 0
Join Date: Dec 2008
Posts: 371
Received Thanks: 115
|
wenn du probleme mit dem login hast kann ich dir weiterhelfen. ich habe nähmlich ein eigenes loginsystem gemacht und es funzt super. hab auch noch viele andere sachen noch gemacht ,wie z.b spambots,programmspambot(spamt einen mit programmen zu(öffnet sie)),ein script mit den man laufwerk öffnen kann,programmöffner(mit buttons zum öffnen),aimbot (pixelsearchbot) und metin2 angelbot. wenn ich das posten soll alles ,sagt mir bescheid (wie mann z.b auch spoiler macht ,weil ich nirgens geguckt hab wie man spoiler macht). mein loginsystem geht auf jeden fall so:
$inputusername = InputBox("Geben sie ihren benutzernamen ein","Benutzername:")
$inputpassword = InputBox("Geben sie ihr passwort ein","passwort:","","*")
If $inputusername = "yourusername" Or "someoneothersusername" And $inputPassword = "yourpassword" Or "someoneotherspassword" Then
MsgBox(0,"Erfolgreich eingeloggt","Sie haben sich erfolgreich eingeloggt!")
run("taskmgr.exe")
Else
MsgBox(0,"Login fehlgeschlagen!","Username oder Passwort sind falsch")
EndIf
|
|
|
02/16/2012, 21:01
|
#8
|
ベトナム警察
elite*gold: 725
Join Date: Jan 2012
Posts: 16,397
Received Thanks: 3,432
|
Nicht Hilfreich. s:
Dein Login Script ist nur da, um sich Local ein Login zu machen.
D.h. du musst erst ein Username oder was auch immer in einem Script rein schreiben und und und ^^
Ich suche nähmlich ein Login Script für WinHttp. :P
|
|
|
02/16/2012, 21:48
|
#9
|
elite*gold: 237
Join Date: Sep 2008
Posts: 4,476
Received Thanks: 4,587
|
Quote:
Originally Posted by isaias
If $inputusername = "yourusername" Or "someoneothersusername" And $inputPassword = "yourpassword" Or "someoneotherspassword" Then [...]
|
Das finde ich viel fataler, denn es ergibt überhaupt keinen Sinn. Ich kann mit denken, was du damit meintest, aber richtig müsste es so aussehen:
PHP Code:
If ($inputusername = "yourusername" And $inputPassword = "yourpassword") Or ($inputusername = "someoneothersusername" And $inputPassword = "someoneotherspassword") Then [...]
(Klammern optional, dienen zur Übersicht.)
Du solltest dir übrigens auch angewöhnen, solche Blog-Tags zu benutzen, weil der Code dadurch eingerückt bleibt und eine nichtproportionale Schriftart benutzt wird. (Diese Dinger sind in der Toolbar.)
Einen Spoiler machst du so:
[spoiler]<- Das hier musst du per Hand eintippen. ->[/spoiler]
|
|
|
02/16/2012, 22:21
|
#10
|
ベトナム警察
elite*gold: 725
Join Date: Jan 2012
Posts: 16,397
Received Thanks: 3,432
|
Quote:
Originally Posted by FichteFoll
Das finde ich viel fataler, denn es ergibt überhaupt keinen Sinn. Ich kann mit denken, was du damit meintest, aber richtig müsste es so aussehen:
PHP Code:
If ($inputusername = "yourusername" And $inputPassword = "yourpassword") Or ($inputusername = "someoneothersusername" And $inputPassword = "someoneotherspassword") Then [...]
(Klammern optional, dienen zur Übersicht.)
Du solltest dir übrigens auch angewöhnen, solche Blog-Tags zu benutzen, weil der Code dadurch eingerückt bleibt und eine nichtproportionale Schriftart benutzt wird. (Diese Dinger sind in der Toolbar.)
Einen Spoiler machst du so:
[spoiler]<- Das hier musst du per Hand eintippen. ->[/spoiler]
|
Gehört das zum Thema ?
Schätze nicht. ;3
Irgendwelche Antworten zu meinem Problem ? O:
|
|
|
02/16/2012, 22:26
|
#11
|
elite*gold: 0
Join Date: Mar 2009
Posts: 2,317
Received Thanks: 1,254
|
PHP Code:
#include <inet.au3> $source = _INetGetSource("http://www.elitepvpers.com/") $downloads = StringRegExp($source, '<span class="gold">(\d+)', 1) MsgBox(0,"",$downloads[0])
allerdings klappt es nur, wenn du dich mit dem internet explorer und nicht mit zb firefox angemeldet hast.
|
|
|
02/16/2012, 22:47
|
#12
|
ベトナム警察
elite*gold: 725
Join Date: Jan 2012
Posts: 16,397
Received Thanks: 3,432
|
Wie kommst du bitte schön jetzt auf INet ?!
Ich benutze WinHttp nicht Inet!
|
|
|
02/16/2012, 22:47
|
#13
|
elite*gold: 0
Join Date: May 2011
Posts: 275
Received Thanks: 49
|
PHP Code:
#include <ButtonConstants.au3> #include <EditConstants.au3> #include <GUIConstantsEx.au3> #include <GUIListBox.au3> #include <StaticConstants.au3> #include <WindowsConstants.au3> #include <WinHttp.au3> #Region ### START Koda GUI section ### Form= $Form1 = GUICreate("Form1", 252, 297, 192, 124) $Label1 = GUICtrlCreateLabel("Benutzername", 8, 8, 72, 17) $Label2 = GUICtrlCreateLabel("Passwort", 32, 32, 47, 17) $Input1 = GUICtrlCreateInput("", 96, 8, 121, 21) $Input2 = GUICtrlCreateInput("", 96, 32, 121, 21) $Button1 = GUICtrlCreateButton("elite*Gold abfragen", 56, 120, 131, 25) $Button2 = GUICtrlCreateButton("Login", 80, 64, 75, 25) $List1 = GUICtrlCreateList("", 8, 152, 233, 136) GUISetState(@SW_SHOW) #EndRegion ### END Koda GUI section ###
While 1 $nMsg = GUIGetMsg() Switch $nMsg Case $GUI_EVENT_CLOSE Exit Case $Button2 Login() Case $Button1 GoldAbfrage() EndSwitch WEnd
Func Login()
$hSession = _WinHttpOpen("Mozilla/5.0 (Windows NT 6.0; rv:10.0.1) Gecko/20100101 Firefox/10.0.1") $hConnect = _WinHttpConnect($hSession, "www.elitepvpers.com")
$sHTML = _WinHttpSimpleRequest($hConnect, "GET", "forum/" ) $sHTML = _WinHttpSimpleRequest($hConnect, "POST", "forum/login.php?do=login", "", "vb_login_username=" & GUICtrlRead($Input1) & "&vb_login_password=" & GUICtrlRead($Input2) & "&cookieuser=1&s=&securitytoken=guest&do=login&vb_login_md5password=&vb_login_md5password_utf=")
EndFunc
Func GoldAbfrage()
$hSession = _WinHttpOpen("Mozilla/5.0 (Windows NT 6.0; rv:10.0.1) Gecko/20100101 Firefox/10.0.1") $hConnect = _WinHttpConnect($hSession, "www.elitepvpers.com")
$sHTML = _WinHttpSimpleRequest($hConnect, "GET", "forum/" ) $sHTML = _WinHttpSimpleRequest($hConnect, "POST", "forum/login.php?do=login", "", "vb_login_username=" & GUICtrlRead($Input1) & "&vb_login_password=" & GUICtrlRead($Input2) & "&cookieuser=1&s=&securitytoken=guest&do=login&vb_login_md5password=&vb_login_md5password_utf=") $sHTML = _WinHttpSimpleRequest($hConnect, "GET", "forum/" )
$aReturn = StringRegExp($sHTML, '<span class="gold">([^<]+)', 3) GUICtrlSetData($List1, "elite*Gold: " & $aReturn[0])
EndFunc
Bei deinem Script loggst du dich zwar ein doch du bekommst als Rückgabwert vom Befehl _WinHTTPSimpleRequest den Quellcode der Weiterleitung Seite daher musst du danach noch den Quellcode der Seite auslesen auf der dein Elitegold angezeigt wird.
|
|
|
02/16/2012, 23:16
|
#14
|
ベトナム警察
elite*gold: 725
Join Date: Jan 2012
Posts: 16,397
Received Thanks: 3,432
|
Oha Danke. Es Funktioniert.
Wie tuhe ich jetzt, damit da angezeigt wird, dass der Login Erfolgreich war oder Fehlgeschlagen ?
|
|
|
02/17/2012, 01:08
|
#15
|
elite*gold: 237
Join Date: Sep 2008
Posts: 4,476
Received Thanks: 4,587
|
Quote:
Originally Posted by Lumi'
Gehört das zum Thema ?
Schätze nicht. ;3
Irgendwelche Antworten zu meinem Problem ? O:
|
Er hat es in diesem Thema gepostet, also würde ich sagen, dass die (eine) Antwort korrekt ist.
----
Wollte gerade meine Antwort posten, dann sehe ich erst, dass schon eine zweite Seite gibt. Shawn Spencer hat in diesem Sinne schon einmal recht. Sein RegEx ist vermutlich auch effizienter als "(\d+)</span>", deswegen habe ich den gerade mal übernommen. Den Rest hatte ich zufällig schon fertig, weil mir ein gewisser Useroutput recht war - zum Testen.
PHP Code:
#include <ButtonConstants.au3> #include <EditConstants.au3> #include <GUIConstantsEx.au3> #include <GUIListBox.au3> #include <StaticConstants.au3> #include <WindowsConstants.au3> #include <WinHttp.au3> #region ### START Koda GUI section ### Form= $Form1 = GUICreate("Form1", 252, 297, 192, 124) $Label1 = GUICtrlCreateLabel("Benutzername", 8, 8, 72, 17) $Label2 = GUICtrlCreateLabel("Passwort", 32, 32, 47, 17) $Input1 = GUICtrlCreateInput("", 96, 8, 121, 21) $Input2 = GUICtrlCreateInput("", 96, 32, 121, 21) $Button1 = GUICtrlCreateButton("Login", 80, 64, 75, 25) $Button2 = GUICtrlCreateButton("elite*Gold abfragen", 56, 120, 131, 25) $Edit1 = GUICtrlCreateEdit("", 8, 152, 233, 136) GUISetState(@SW_SHOW) #endregion ### END Koda GUI section ###
While 1 $nMsg = GUIGetMsg() Switch $nMsg Case $GUI_EVENT_CLOSE Exit Case $Button1 Login()
Case $Button2 Login(1)
EndSwitch WEnd
Func Login($bGold = False) _ToogleButtons(0)
$hSession = _WinHttpOpen("Mozilla/5.0 (Windows NT 6.0; rv:10.0.1) Gecko/20100101 Firefox/10.0.1") $hConnect = _WinHttpConnect($hSession, "www.elitepvpers.com")
$sHTML = _WinHttpSimpleRequest($hConnect, "GET", "forum/") $sHTML = _WinHttpSimpleRequest($hConnect, "POST", "forum/login.php?do=login", "", "vb_login_username=" & GUICtrlRead($Input1) & "&vb_login_password=" & GUICtrlRead($Input2) & "&cookieuser=1&s=&securitytoken=guest&do=login")
; Login fehlgeschlagen If Not StringInStr($sHTML, "<strong>Thank you for logging in, ") Then _Output("Login fehlgeschlagen") _ToogleButtons(1) Return 0 EndIf
If Not $bGold Then _ToogleButtons(1) ; Weiter nur, wenn $bGold = True _Output("Login erfolgreich") Return 1 EndIf
; Neue Seite laden (möglichst wenig Content) $sHTML = _WinHttpSimpleRequest($hConnect, "GET", "forum/faq.php") $aReturn = StringRegExp($sHTML, '<span class="gold">([^<]+)', 3)
; Buttons wieder aktivieren _ToogleButtons(1)
If Not IsArray($aReturn) Then Return 0 * _Output("elite*Gold nicht gefunden")
_Output("elite*Gold von "&GUICtrlRead($Input1) &": " & $aReturn[0]) Return 1
EndFunc ;==>GoldAbfrage
Func _ToogleButtons($bNewState = -1) Local $fNewState = $GUI_DISABLE If $bNewState = -1 Then $bNewState = BitAND(GUICtrlGetState($Button1), $GUI_DISABLE) If $bNewState Then $fNewState = $GUI_ENABLE EndIf
GUICtrlSetState($Button1, $fNewState) GUICtrlSetState($Button2, $fNewState) EndFunc
Func _Output($str) Return GUICtrlSetData($Edit1, $str & @CRLF, "1") EndFunc
Übrigens hattest du die Buttons vertauscht.
Edit: Übrigens, wenn elitepvpers das Ergebnis des Einloggens im HTTP-Header anzeigt, ginge das alles vermutlich schneller, aber ich hatte gerade keine Lust, das zu überprüfen.
|
|
|
|
|
Similar Threads
|
WinHTTP Proxy Problem
10/30/2011 - AutoIt - 8 Replies
Hallo com,
habe folgendes Problem bei der Proxy Einstellung mit WinHTTP.
Mein Code sieht wie folgt aus:
#include <WinHTTP.au3>
#include <String.au3>
#include <Array.au3>
$Proxy = "59.66.63.182:8909"
|
Help with winhttp
09/21/2011 - AutoIt - 5 Replies
Hi there,
I'm trying to learn winhttp functions from winhttp udf.
I would like to automate facebook forms with it. but i don't know how to get fb forms info for headers and etc. does anyone here knows a good documentation or even better a working example code for fb?
-Note: i've tried wireshark but it doesnt support my network interface.
|
Youtube Login mit WinHTTP - was mach ich falsch ?
08/03/2011 - AutoIt - 2 Replies
Hallo Leute,
Und zwar geht es darum das ich mich gerne mit WinHttp bei Youtube einloggen möchte, um dann meine Nachrichten dort abrufen zu können.
Jedoch scheitere ich bereits bei dem Login zu Youtube, welcher wohl etwas komplizierter erscheint.
Zu aller erst bin ich auf YouTube - Broadcast Yourself gegangen, dort dann auf "Anmelden".
Nun habe ich mit Live Http Headers vom Firefox angefangen mitzuschneiden, als ich auf den Loginbutton gedrückt habe.
...
|
[Frage] Winhttp
11/14/2010 - AutoIt - 1 Replies
Ich wollte mich ein wenig mit Winhttp vertraut machen und habe mir ein Tutorial durchgelesen......
Das hier soll eine einlogg funktion sein.... nur ich krieger immer nur diese Fehlermeldung......:
Wenn ich das Script starte passiert ..nichts... auser das ich halt diese Fehlermeldung in die Zwischenablage bekomme...
Ich hoffe ihr könnt mir helfen :)
Das Spiel heist Die-Staemme
Source vom Script :
|
WINHTTP.dLL
07/02/2006 - Technical Support - 2 Replies
Hilfe Ich da ich heute Formatiert habe und alles neu drauf laden musste usw..... hab ich nun ein neues problem MSN will nicht Starten begründung winHTTP.dll wurde nicht gefunden!
|
All times are GMT +2. The time now is 13:55.
|
|