|
You last visited: Today at 04:58
Advertisement
IE.au3 Quelltext auslesen+login func
Discussion on IE.au3 Quelltext auslesen+login func within the AutoIt forum part of the Coders Den category.
09/11/2011, 15:50
|
#1
|
elite*gold: 0
Join Date: Jun 2009
Posts: 2,235
Received Thanks: 810
|
IE.au3 Quelltext auslesen+login func
bitte im anderen thread schreiben da ich ausversehen 2x auf erstellen geklickt hab.
|
|
|
09/11/2011, 17:01
|
#2
|
elite*gold: 237
Join Date: Sep 2008
Posts: 4,476
Received Thanks: 4,587
|
Ich hoffe, du kennst du ein wenig mit Html aus und kennst die Bestandteile eines  . Ebenso kennst du die einzelnen Eigenschaften wie "id" und "name" und kannst damit die einzelnen Elemente ansprechen. ("  " bedeutet, dass du das Formular abschickst.)
Nun, funktionieren tut es so (COM-Variante, weil es einfach übersichtlicher ist - genauso gut mit den _IE-Funktionen realisierbar):
PHP Code:
#include <IE.au3>
Local $oIE, $oLoginForm $oIE = _IECreate("www.freeaquazoo.de", 1)
#cs ; Hiermit würde das Formular ermittelt werden. Allerdings wird das Forumular an sich in keinster Weise angesprochen, ; da, wie unten notiert, die "name" Attrobute nicht gesetzt sind und deswegen alles über die Id gesteuert wird.
; Ermittelt Formular, das "index.php" als action gesetzt hat, da es 2 Formulare gibt und dieses keine Id und keinen Namen hat For $oForm In $oIE.document.forms If $oForm.action = "index.php" Then ConsoleWrite("test" & @CRLF) $oLoginForm = $oForm ExitLoop EndIf Next ; Alternativ: Nehme das Input und anschließend dessen Formular ;~ $oLoginForm = $oIE.document.getElementById("logName").form If Not IsObj($oLoginForm) Then Exit 1 #ce
With $oIE.document ; Nutze die Id der einzelnen Form-Elemente, da ebenfalls kein Name angegeben ist .getElementById("logServer").value = 2 ; Werte 1-5 für "Welt 1"-"Welt 5" .getElementById("logName").value = "LoginName" .getElementById("logPass").value = "LoginPass"
; Klicke das Input mit "type=submit" statt "$oForm.submit", da es ein "onclick" Attribut hat For $oInput In .getElementsByTagName("input") If $oInput.type = "submit" Then $oInput.click Next EndWith
Wenn du etwas nicht verstehst, frag einfach nach.
|
|
|
09/12/2011, 17:08
|
#3
|
elite*gold: 0
Join Date: Jun 2009
Posts: 2,235
Received Thanks: 810
|
so... ziemlich alles daran
ich mache das komplett anders deine variante sagt mir jetzt beim anschauen
absolut garnichts
|
|
|
09/13/2011, 11:50
|
#4
|
elite*gold: 237
Join Date: Sep 2008
Posts: 4,476
Received Thanks: 4,587
|
Quote:
Originally Posted by FichteFoll
Ich hoffe, du kennst dich ein wenig mit Html aus und kennst die Bestandteile eines  . Ebenso kennst du die einzelnen Eigenschaften wie "id" und "name" und kannst damit die einzelnen Elemente ansprechen.
|
Erfüllst du denn diese Kriterien? Wenn nicht, dann solltest du dies nachholen. Einfach irgendeinen Code zu kopieren und dann ein paar Werte einzugeben wird dir nicht helfen, da es hier 1. nicht auf herkömmliche Weise funktioniert und du 2. keinerlei Lernfaktor dabei hast.
Nun, hier ist die Methode mit den _IE-Funktionen:
PHP Code:
#include <IE.au3>
Local $oIE, $oLoginForm $oIE = _IECreate("www.freeaquazoo.de", 1)
; Elemente finden Local $oServer, $oName, $oPass $oServer = _IEGetObjById($oIE, "logServer") $oName = _IEGetObjById($oIE, "logName") $oPass = _IEGetObjById($oIE, "logPass")
; Werte setzen _IEFormElementOptionSelect($oServer, 2) ; Werte 1-5 für "Welt 1"-"Welt 5" _IEFormElementSetValue($oName, "Dies Ist Dein LoginName") _IEFormElementSetValue($oPass, "Dies Ist Dein LoginPass")
; Schicke das Formular ab ; Dies ist nicht über eine _IE-Funktion realisierbar, da es diese nicht gibt For $oInput In $oServer.form.getElementsByTagName("input") If $oInput.type = "submit" Then _IEAction($oInput, "click") Next
#cs ; Die andere Alternative With $oIE.document ; Ermittle Form-Element über die Id des ersten Inputs Local $oForm = .getElementById("logServer").form ; Nutze die Id der einzelnen Form-Elemente, da ebenfalls kein Name angegeben ist .getElementById("logServer").value = 2 ; Werte 1-5 für "Welt 1"-"Welt 5" .getElementById("logName").value = "LoginName" .getElementById("logPass").value = "LoginPass"
; Klicke das Input mit "type=submit" statt "$oForm.submit", da es ein "onclick" Attribut hat For $oInput In $oForm.getElementsByTagName("input") If $oInput.type = "submit" Then $oInput.click Next EndWith #ce
|
|
|
09/13/2011, 17:27
|
#5
|
elite*gold: 0
Join Date: Jun 2009
Posts: 2,235
Received Thanks: 810
|
ich verstehe nur noch den kleinen teil unten nicht
PHP Code:
For $oInput In $oServer.form.getElementsByTagName("input") If $oInput.type = "submit" Then _IEAction($oInput, "click") Next
wie kannst du solche punkte setzen bei den befehlen ?
bzw. woher kennst du die , ist es aus diesem link
mit dem formular ? ich sehs mir auf jedenfall an
btw. du hast ein schönen programmierstyl
|
|
|
09/13/2011, 17:53
|
#6
|
elite*gold: 237
Join Date: Sep 2008
Posts: 4,476
Received Thanks: 4,587
|
Bei diesen Punkten (bzw. genauer gesagt den Dingern VOR diesen Punkten) handelt es sich um Objekte/COM (Component Object Model). Es gibt einen Bereich in der Hilfe, der etwas dazu erklärt, ebenso wie die For ... In-Struktur.
Das Internet Explorer-Objekt ist zum Beispiel ein solches, das man auch von AutoIt aus ansprechen kann. Ich kenne mich recht gut mit Javascript aus, dort sind diese Befehle und ebenso diese Struktor (dort Document Object Model (DOM) genannt) ein wichtiger Bestandteil, wenn man im Web arbeitet. Details zu diesen Befehlen sowie zu jeder Eigenschaft findest du auf der Seite  .
Allerdings ist das schon etwas fortgeschritten, denn vor den Objekten kommen ersteinmal die Arrays usw.
|
|
|
09/13/2011, 19:07
|
#7
|
elite*gold: 0
Join Date: Jun 2009
Posts: 2,235
Received Thanks: 810
|
ok wenn das nur für fortgeschrittene ist wo kann ich dann
die grundlagen zu den ganzen befehlen lernen wenn ich
nicht gleich mit den "punktbefehlen" anfangen soll
willst du mir damit sagen das Javascript besser ist für
browsergame sachen
oder kann ich bei autoit bleiben ?
was genau müsste ich bei SelfHTML lernen da giebts sehr viel material
|
|
|
09/13/2011, 19:16
|
#8
|
elite*gold: 237
Join Date: Sep 2008
Posts: 4,476
Received Thanks: 4,587
|
Das kommt darauf an. Javascript wird im Browser ausgeführt und beendet, sobald du die Seite verlässt. Es besteht die Möglichkeit auf sog. Userscripts, aber das ist noch komplizierter.
Es gibt viele AutoIt-Tutorials hier. Ich kann nicht erklären, wie du auf die Toilette gehts oder wie du deine Gabel hältst. Dazu habe ich einfach keine Zeit.
Google ist dein bester Freund, Tutorials sind deine Helfer. Und solltest du wirklich nicht mehr weiterkommen, dann gibt es die Foren. Viel Glück.
|
|
|
09/13/2011, 19:20
|
#9
|
elite*gold: 0
Join Date: Jun 2009
Posts: 2,235
Received Thanks: 810
|
ok.
ich werd mal rumsuchen
zu browsergame bots giebts doch nicht viele tuts
ich kenne nur 1 das von shadow was aber auch nicht
so toll ist , weil die erklärung von den befehlen iwie minimal ist
|
|
|
09/13/2011, 19:23
|
#10
|
elite*gold: 0
Join Date: Feb 2010
Posts: 41
Received Thanks: 5
|
Quote:
Originally Posted by Volltboon
ok.
ich kenne nur 1 das von shadow was aber auch nicht
so toll ist , weil die erklärung von den befehlen iwie minimal ist
|
das reicht allerdings auch m.E. aus
wenn du noch Fragen dazu hast (wahrscheinlich tcprequest bezogen) dann stelle sie hier
|
|
|
09/13/2011, 20:03
|
#11
|
elite*gold: 0
Join Date: Jun 2009
Posts: 2,235
Received Thanks: 810
|
was meinst du mit reicht aus ?
ich würds gern verstehen aber ich hab das tut schon 3x durch also den ie abteil
und verstehe es nicht bzw. geht es bei mir nicht so wie bei ihm
|
|
|
09/13/2011, 20:51
|
#12
|
elite*gold: 237
Join Date: Sep 2008
Posts: 4,476
Received Thanks: 4,587
|
Quote:
Originally Posted by theboegl
das reicht allerdings auch m.E. aus
wenn du noch Fragen dazu hast (wahrscheinlich tcprequest bezogen) dann stelle sie hier 
|
Natürlich fängt man dann auch gleich mit seinen TCP-Requests an, wenn man gerade dabei ist, die Funktionen des IE zu lernen -_-
Bevor man sich an ein Tutorial für Browergames wagt, sollte man erst einmal die Basics von AutoIt lernen und ein generelles Verständnis für Programmiersprachen und Programmieren. Das ist das Wichtigste. Wenn du am Ende 30 Zeilen Code hast und nach 2 Tagen überhaupt keine Ahnung mehr, was du da eigentlich gemacht hast, dann ist definitiv etwas schief gelaufen.
|
|
|
09/13/2011, 21:50
|
#13
|
elite*gold: 0
Join Date: Jun 2009
Posts: 2,235
Received Thanks: 810
|
ich hab autoit erfahrung
ich habs mir jetzt übrigens nachdem ich das tut für fortgeschrittene und
ein paar mal in ie au3 riengeschaut hab hab ich sein tut begriffen
nur leider brauch ich das meiste nicht nur den login teil
der schwierigere teil wird bei mir jetzt das navigieren und drücken der
buttons weil ja wirklich alles in diesem spiel mit "OnClick" ist
und außerdem noch son fisch bot zu machen wird mir die
grauen zellen knattern
|
|
|
 |
Similar Threads
|
IE Funktion und quelltext auslesen
09/11/2011 - AutoIt - 2 Replies
WIe kann ich machen, dass wenn ich mit ienavigate auf eine seite navigiere und dann den quelltext auslesen will?
MfG Ludder231
|
[WebTCP] For $i schleife und quelltext auslesen
07/30/2011 - AutoIt - 6 Replies
Hi ich habs ein Problem mit der For-Schleife und den arrays.
Da ich vorhabe ein script zu schreiben was mir die Höchstbietenden in DarkOrbit anzeigt (Handel) brauchte ich ein loginscript....Das loginscript hab ich fertig. Bloß jz bin ich dabei den quelltext auszulesen aber das es im quelltext vor jedem Höchstbietenden class="fliess10px-gelb"> und hinter dem bietenden </span></td> das kommt muss ich das ja mit einer for schleife lösen aber ich weiß nicht ganz wie. Ich will alle in einer liste...
|
Quelltext - Login Button nicht findbar
07/18/2011 - AutoIt - 12 Replies
Hi, ich finde in einem Quelltext den loginbuton nicht!
Hoffe jemand ist so Nett und findet ihn für mich...
Oder zmd kann ich ihn nicht ansteuern mit _IEGetObjByid oder _IEGetObjByname -.-
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-trans itional.dtd">
<?xml version="1.0" encoding="utf-8"?>
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr" >
<head>
<base href="http://www.howrse.de/"/>
<meta...
|
Quelltext auslesen Packetbot
07/24/2010 - AutoIt - 2 Replies
Ich muss für eine Funktion die den Gesundheitszustands des Accounts auslesen muss. hier mein aktueller code
#RequireAdmin
#Region ;**** Directives created by AutoIt3Wrapper_GUI ****
#AutoIt3Wrapper_icon=logo.ico
#AutoIt3Wrapper_Compression=4
#EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****
#include <String.au3>
#include <ButtonConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
|
Auslesen+Func+Heilen Fragen
05/23/2010 - AutoIt - 8 Replies
Hallo,
ich habe ein paar Fragen, und freue mich über jede Antwort.
Mein Script:
#Region ### START Koda GUI section ### Form=C:\Users\Lucien\Desktop\Forms\made by lucien2.kxf
$Made = GUICreate("", 275, 182, 233, 137)
$Checkbox1 = GUICtrlCreateCheckbox("F2 Aufheben", 152, 16, 89, 17)
$Checkbox2 = GUICtrlCreateCheckbox("F1 Angreifen ", 48, 16, 97, 17)
|
All times are GMT +1. The time now is 04:59.
|
|