[AutoIt]Tutorial zu Browsergamebots (Packetbots und IEbots)

02/15/2010 01:19 kknb#16
hm ok, danke für deine antwort. habe mir schon gedacht das das wohl nur per qt zu bewerkstelligen ist.


edit: so, wollte das ganze jetzt mal ein wenig probieren, doch bin schon daran gescheitert mir den quellcode aus dem eingebundenem ie object zu holen.

problem hierbei ist ja das man eingeloggt sein muss das einem der quellcode was bringt.

wäre cool wenn nen könner da mal drüber schauen könnte, wie gesagt ich hätte gerne den sc ohne ein ie fenster zu öffnen, also aus dem eingebettetem object wenns geht.
02/15/2010 10:03 Shadow992#17
Quote:
Originally Posted by kknb View Post
hm ok, danke für deine antwort. habe mir schon gedacht das das wohl nur per qt zu bewerkstelligen ist.


edit: so, wollte das ganze jetzt mal ein wenig probieren, doch bin schon daran gescheitert mir den quellcode aus dem eingebundenem ie object zu holen.

problem hierbei ist ja das man eingeloggt sein muss das einem der quellcode was bringt.

wäre cool wenn nen könner da mal drüber schauen könnte, wie gesagt ich hätte gerne den sc ohne ein ie fenster zu öffnen, also aus dem eingebettetem object wenns geht.
Mit $HTML = _IEDocReadHTML ($oIE) , sollte es kein problem sein den Quelltext vom eingebetteten Internet Explorer herauszufinden .
02/15/2010 11:26 kknb#18
ah ok funktioniert soweit.
nur hab ich wieder nen problem.
dieser ganze vorgang hier dauert bei mir ganze 5 minuten und 11 sekunden.

Code:
	$zeit=TimerInit()
	_IENavigate($oIE, "www.ogame.de", 1)
	$oForm = _IEFormGetCollection($oIE, 0)
	$oUsername = _IEFormElementGetObjByName($oForm, "login")
	$oPassword = _IEFormElementGetObjByName($oForm, "pass")
	_IEFormElementSetValue($oUsername, $name)
	_IEFormElementSetValue($oPassword, $passwort)
	$oSelect = _IEFormElementGetObjByName($oForm, "uni_url")
	_IEFormElementOptionSelect($oSelect, $server - 1, 1, "byIndex")
	_IEFormSubmit($oForm)
	;_IELoadWait($oIE)
	$source=_IEDocReadHTML($oIE)
	$zeitfertig=round(TimerDiff($zeit)/1000,1)
	FileWrite("test.txt",$source&@CRLF&$zeitfertig)
	FileWrite("test.txt",$zeitfertig)
in der console kommt dann irgendwann diese meldung

Code:
--> IE.au3 V2.4-0 Warning from function _IELoadWait, $_IEStatus_LoadWaitTimeout
02/15/2010 11:27 Loveskill#19
segr schön gestaltet gefähllt mit sehr gut:D
02/15/2010 13:18 Shadow992#20
Quote:
Originally Posted by kknb View Post
ah ok funktioniert soweit.
nur hab ich wieder nen problem.
dieser ganze vorgang hier dauert bei mir ganze 5 minuten und 11 sekunden.

Code:
	$zeit=TimerInit()
	_IENavigate($oIE, "www.ogame.de", 1)
	$oForm = _IEFormGetCollection($oIE, 0)
	$oUsername = _IEFormElementGetObjByName($oForm, "login")
	$oPassword = _IEFormElementGetObjByName($oForm, "pass")
	_IEFormElementSetValue($oUsername, $name)
	_IEFormElementSetValue($oPassword, $passwort)
	$oSelect = _IEFormElementGetObjByName($oForm, "uni_url")
	_IEFormElementOptionSelect($oSelect, $server - 1, 1, "byIndex")
	_IEFormSubmit($oForm)
	;_IELoadWait($oIE)
	$source=_IEDocReadHTML($oIE)
	$zeitfertig=round(TimerDiff($zeit)/1000,1)
	FileWrite("test.txt",$source&@CRLF&$zeitfertig)
	FileWrite("test.txt",$zeitfertig)
in der console kommt dann irgendwann diese meldung

Code:
--> IE.au3 V2.4-0 Warning from function _IELoadWait, $_IEStatus_LoadWaitTimeout
Ja mir ist aufgefallen , dass _IEFormSubmit verdammt lange wartet (zumindest bei Ogame) . Du solltest deinen Code in das umändern :
PHP Code:
    $zeit=TimerInit()
    
_IENavigate($oIE"www.ogame.de"1)
    
$oForm _IEFormGetCollection($oIE0)
    
$oUsername _IEFormElementGetObjByName($oForm"login")
    
$oPassword _IEFormElementGetObjByName($oForm"pass")
    
_IEFormElementSetValue($oUsername$name)
    
_IEFormElementSetValue($oPassword$passwort)
    
$oSelect _IEFormElementGetObjByName($oForm"uni_url")
    
_IEFormElementOptionSelect($oSelect$server 11"byIndex")
    
_IEFormSubmit($oForm,0)
    
_IELoadWait($oIE,0,8000)
    
$source=_IEDocReadHTML($oIE)
    
$zeitfertig=round(TimerDiff($zeit)/1000,1)
    
FileWrite("test.txt",$source&@CRLF&$zeitfertig)
    
FileWrite("test.txt",$zeitfertig
Das einzige was ich geändert habe , ist das Warten bis die Seite fertig geladen hat bei _IEFormSubmit($oForm) ausgeschalten (es wird nämlich standartmäßig gewartet , aber es gibt kein TimeOut , deswegen dauert es auch solange . Ogame schickt anscheinend andauernd Packets und deswegen wird nicht erkannt , dass die Seite fertig geladen ist)
Und dafür _IeLoadWait wieder reinkommentiert .

Meiner Meinung nach ist es am besten alles warten auszuschalten und dann selbst das "Warten" hinzuzufügen , denn dann kann man ein TimeOut bestimmen .
02/15/2010 16:49 ax5#21
It world be very good if you can make it in English to :) Thanks for your good work :)
02/15/2010 21:41 Shadow992#22
Quote:
Originally Posted by ax5 View Post
It world be very good if you can make it in English to :) Thanks for your good work :)
Yeah would be nice ...
But my english is limited ...
I am going to make it english too .
I hope my english is good enough for rewriting it :D
02/16/2010 13:36 ax5#23
Quote:
Originally Posted by Shadow992 View Post
Yeah would be nice ...
But my english is limited ...
I am going to make it english too .
I hope my english is good enough for rewriting it :D
ok nice :) :mofo:
02/17/2010 08:37 Neon™#24
Echt gute Arbeit ;)
03/06/2010 19:19 N-Exception#25
wie soll ich die packets sniffen für den darkorbit client? Da kann ich nix mit live http headers sniffen...
03/06/2010 19:44 Shadow992#26
Quote:
Originally Posted by Axigan View Post
wie soll ich die packets sniffen für den darkorbit client? Da kann ich nix mit live http headers sniffen...
Dafür brauchst du wpe pro , dann sollte es gehen , aber dann brauchst du meine Funktionen auch garnicht , geschweigedenn dieses Tutorial , da man Darkorbit mit Metin2 , last Chaos usw. vergleichen kann .
Um ein Packetbot dafür zu machen , solltest du dich lieber etwas genauer mit TCP allgemein beschäftigen .
03/12/2010 01:54 ax5#27
I still hop english version is comming :)
03/12/2010 16:20 .nAno#28
nice, nur leider erstmal keine Zeit mich damit ausgiebig zu beschäftigen :(
außerdem muss ich erstmal mein C++ lernen :awesome:

Bei der Gelegenheit wollt ich dich aber mal fragen, ob du Erfahrung mit Obj. in AutoIT unter 64-bit hast, die IE.au3 called ja eig. nur Funktionen über Obj aber keine Funktion davon funktioniert auch auf meinem 64-bit Rechner :-/
03/12/2010 18:23 Shadow992#29
Quote:
Originally Posted by .nAno View Post
nice, nur leider erstmal keine Zeit mich damit ausgiebig zu beschäftigen :(
außerdem muss ich erstmal mein C++ lernen :awesome:

Bei der Gelegenheit wollt ich dich aber mal fragen, ob du Erfahrung mit Obj. in AutoIT unter 64-bit hast, die IE.au3 called ja eig. nur Funktionen über Obj aber keine Funktion davon funktioniert auch auf meinem 64-bit Rechner :-/
Nö Obj. sind wohl das letzte womit ich mich noch nicht wirklich beschäftigt habe ...
Btw. Deswegen würde ich auch nicht die IE.au3 nehmen , sondern Packetsbots machen , die sollten auf so ziehmlich jeden Windoof funktionieren .
03/12/2010 19:22 .nAno#30
ok, danke^^
ich fand Obj nur teilweise ganz praktisch für die Arbeit mit Windows, etc. ;)