Problem in der IE.au3

  • hi

    ich brauche leider schon wieder hilfe :(

    dieser code:

    [autoit]


    _IENavigate ($oIE, "http://s1.travian.com.tr/a2b.php")
    Sleep(2000)
    $o_form = _IEFormGetObjByName($oIE, "snd")
    $o_login = _IEFormElementGetObjByName($o_form, "t1")
    _IEFormElementSetValue($o_login, "123")

    [/autoit]

    spuckt diesen fehler aus:

    [autoit]


    C:\PROGRA~1\AutoIt3\Include\ie.au3 (1458) : ==> The requested action with this object has failed.:
    $o_object.fireEvent ("OnChange")
    $o_object.fireEvent ("OnChange")^ ERROR

    [/autoit]

    die betreffende zeile in der IE.au3 ist:

    $o_object.fireEvent ("OnChange")


    2tens funktioniert die eingabe von 123 nicht. kann das an den <div>s liegen? habe gelsen dass frames auch probleme machen.

    der form und input name stimmt.

    mfg mar bobley

    Einmal editiert, zuletzt von Mar Bobley (24. September 2006 um 22:03)

  • also ich kann hier leider nicht wirklich weiterhelfen, ausser
    1. das thema hochschieben *g* und
    2. solltest du anstatt dem sleep(2000) lieber den befehl _IELoadWait($oIE) verwenden. nur so ist sichergestellt, dass folgebefehle erst ausgeführt werden, wenn die seite wirklich vollständig geladen ist.

    und "t1" ist bestandteil eines verzeichnisses, aber eines formelementes ?

    der liebe jonk scheint in solchen themen recht fit zu sein, er meldet sich sicher noch zu wort. ;)

    gruss exberliner

  • Hossa :)

    ich habe zwar auf der Website nur "internet" und "login" verstanden, aber macht ja nix :D.

    Spoiler anzeigen
    [autoit]


    #include <ie.au3>
    $oIE = _IECreate ("http://s1.travian.com.tr/a2b.php")
    _IELoadWait($oIE)
    $o_form = _IEFormGetObjByName($oIE, "snd")
    $o_login = _IEFormElementGetObjByName($o_form, "e062309")
    _IEFormElementSetValue($o_login, "derderFormulareAusfuellt")
    $o_passwd = _IEFormElementGetObjByName($o_form, "efd5407")
    _IEFormElementSetValue($o_passwd, "foobar")
    _IEFormSubmit($o_form)

    [/autoit]

    Edit:
    erstaunlich.. wenn man auf die Deutschlandflagge klickt sind die texte auch in deutsch. Sachen gibts :tier: lol

    Einmal editiert, zuletzt von jonk (24. September 2006 um 16:23)

  • ja wie der befehl schon beiinhaltet ist snd der name eines forms.

    t1 ist ein input feld des forms snd.

    das mit dem sleep mach werde ich gleich aendern. danke!

    das problem ist dass ihr euch die seite nicht angucken koennt da ihr da keinen acc habt :( das ist natuerlich doof.

    @jonk jo ist n browsergame wo ich gerade auf nem tuerkischen server spiel 8|

    wie bist du auf die werte efd5407 und e062309 gekommen?

    der login ist allerdings nicht mein problem das loest der cookie von ganz alleine ;P mir geht es um ein anderes form im spiel.

    mfg mar bobley

    Einmal editiert, zuletzt von Mar Bobley (24. September 2006 um 20:01)

  • kannst Du den Quelltext der Seite nicht zur Verfügung stellen? (Dateianhang oder Spoilern). Das sollte dann schon weiterhelfen. Vielleicht kannst Du ja auch mein Beispiel einfach nur abändern ;)

    Edit:

    Zitat


    wie bist du auf die werte efd5407 und e062309 gekommen?

    die habe ich mir aus dem Quelltext besorgt. Sind natürlich für das Loginformular.

    Einmal editiert, zuletzt von jonk (24. September 2006 um 20:05)

  • Spoiler anzeigen

    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
    "http://www.w3.org/TR/html4/strict.dtd"><html>
    <head>
    <title>Travian</title>
    <link rel=stylesheet type="text/css" href="un3.css">
    <script src="tr3.js" type=text/javascript></script>

    <meta http-equiv="imagetoolbar" content="no">
    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
    </head>
    <body onload="start()"><div style="position:absolute; z-index:10; left:188px; top:0px; height:60px;"><iframe allowtransparency="true" scrolling="no" hspace="0" vspace="0" frameborder="0" marginheight="0" marginwidth="0" src="ad/un/ads.php" width="468" height="60"></iframe></div><div style="position:absolute; background-color:#747273; left:0px; top:0px; width:100%; height:60px;">
    <table cellspacing="0" cellpadding="0" width="100%" bgcolor="#747273">
    <tr>
    <td width="780" style="background-image:url(img/un/l/ad1.jpg); background-repeat: no-repeat;"></td>
    <td align="right"><img src="img/un/l/ad2.jpg" width="151" height="70" border="0"></td>
    </tr>
    </table>
    </div>
    <div style="position:absolute; width:100%; left:0px; top:42px;">
    <div style="position:absolute; width:100%; height:100px; z-index:1; background-image:url(img/un/l/mw.gif); left: 0px; top: 0px;"></div><map name="nb"><area shape=rect coords="0,0,35,100" href="berichte.php" title="Haberler"><area shape=rect coords="35,0,70,100" href="nachrichten.php" title="Mesajlar"></map><div class="div2">
    <a href="dorf1.php" id="n1"><img class="fl2" src="img/un/l/d1.gif" width="70" height="100" border="0" onmouseover="this.className='fl1'" onmouseout="this.className='fl2'" title="Köy planı"></a><a href="dorf2.php" id="n2"><img class="fl2" src="img/un/l/d2.gif" width="70" height="100" border="0" onmouseover="this.className='fl1'" onmouseout="this.className='fl2'" title="Köy merkezi"></a><a href="karte.php" id="n3"><img class="fl2" src="img/un/l/ka.gif" width="70" height="100" border="0" onmouseover="this.className='fl1'" onmouseout="this.className='fl2'" title="Harita"></a><a href="statistiken.php" id="n4"><img class="fl2" src="img/un/l/st.gif" width="70" height="100" border="0" onmouseover="this.className='fl1'" onmouseout="this.className='fl2'" title="İstatistik"></a><img src="img/un/l/m4.gif" width="70" height="100" border="0" usemap="#nb">
    </div>

    <div class="plus"><a href="plus.php"><img src="img/tr/a/plus.gif" width="80" height="100" border="0" title="Plus menüsü"></a></div>
    <img src="img/un/a/x.gif" width="1" height="90" border="0">

    <table cellspacing="0" cellpadding="0"><tr valign="top">
    <td class="s1">
    <a href="http://www.travian.com.tr/"><img src="img/tr/a/travian0.gif" width="116" height="60" border="0"></a>

    <table width="116" cellspacing="0" cellpadding="0">
    <tr>
    <td class="menu">
    <a href="http://www.travian.com.tr/">Anasayfa</a>
    <a href="#" onClick="Popup(0,0)">Oyun yönergesi</a>
    <a href="spieler.php?uid=2529">Profil</a><a href="logout.php">Logout</a><br><br>
    <a href="http://forum.travian.com.tr/" target="_blank">Forum</a>
    <a href="http://www.travian.com.tr/chat/" target="_blank">Chat</a>
    <br><br><a href="plus.php?id=3">Travian <b><font color="#71D000">P</font><font color="#FF6F0F">l</font><font color="#71D000">u</font><font color="#FF6F0F">s</font></b></a>
    <!--<a href="mobile.php">Travian <i><font color="#71D000"><b>Mobile</b></font></i></a>-->
    </td>
    </tr>
    </table>

    <td class="s2"><img src="img/un/a/w.gif" width="1" height="10" border="0"></td>
    <td class="s3"><h1>Askerleri gönder</h1>

    <p><table class="p1" style="width:100%"cellspacing="1" cellpadding="0"><tr><td>
    <table width="100%" class="f10">
    <form method="POST" name="snd" action="a2b.php">
    <input type="hidden" name="b" value="1">
    <tr>

    <td width="20"><img src="img/un/u/1.gif" width="16" height="16" title="Lejyoner"></td><td width="35"><input class="fm" type="Text" name="t1" value="" size="2" maxlength="5"></td><td class="f8 c b"><b>(0)</b></td><td width="20"><img src="img/un/u/4.gif" width="16" height="16" title="Equites Legati" border="0" onClick="document.snd.t4.value=''"></td><td width="35"><input class="fm" type="Text" name="t4" value="" size="2" maxlength="5"></td><td class="f8"><a href="#" onClick="document.snd.t4.value=4">(4)</a></td><td width="20"><img src="img/un/u/7.gif" width="16" height="16" title="Koçbaşı"></td><td width="35"><input class="fm" type="Text" name="t7" value="" size="2" maxlength="5"></td><td class="f8 c b"><b>(0)</b></td><td width="20"><img src="img/un/u/9.gif" width="16" height="16" title="Senatör"></td><td width="35"><input class="fm" type="Text" name="t9" value="" size="2" maxlength="5"></td><td class="f8 c b"><b>(0)</b></td></tr>


    <tr>
    <td width="20"><img src="img/un/u/2.gif" width="16" height="16" title="Pretoriyan"></td><td width="35"><input class="fm" type="Text" name="t2" value="" size="2" maxlength="5"></td><td class="f8 c b"><b>(0)</b></td><td width="20"><img src="img/un/u/5.gif" width="16" height="16" title="Equites Imperatoris"></td><td width="35"><input class="fm" type="Text" name="t5" value="" size="2" maxlength="5"></td><td class="f8 c b"><b>(0)</b></td><td width="20"><img src="img/un/u/8.gif" width="16" height="16" title="Ateş mancınığı"></td><td width="35"><input class="fm" type="Text" name="t8" value="" size="2" maxlength="5"></td><td class="f8 c b"><b>(0)</b></td><td width="20"><img src="img/un/u/10.gif" width="16" height="16" title="Göçmen"></td><td width="35"><input class="fm" type="Text" name="t10" value="" size="2" maxlength="5"></td><td class="f8 c b"><b>(0)</b></td></tr>


    <tr>
    <td width="20"><img src="img/un/u/3.gif" width="16" height="16" title="Emperiyan"></td><td width="35"><input class="fm" type="Text" name="t3" value="" size="2" maxlength="5"></td><td class="f8 c b"><b>(0)</b></td><td width="20"><img src="img/un/u/6.gif" width="16" height="16" title="Equites Caesaris"></td><td width="35"><input class="fm" type="Text" name="t6" value="" size="2" maxlength="5"></td><td class="f8 c b"><b>(0)</b></td><td colspan="6"></td></tr></table></td></tr></table></p>

    <p><table width="100%" class="f10">
    <tr><td valign="top" width="33%">
    <div class="f10"><input type="Radio" name="c" value="2" checked>Destek</div>
    <div class="f10"><input type="Radio" name="c" value="3" >Hücum: normal</div>
    <div class="f10"><input type="Radio" name="c" value="4" >Hücum: yağmalama</div>
    </td>

    <td valign="top">
    <div><font size="+1"><b>Köy:</b></font>

    <input class="fm" type="Text" name="dname" value="" size="10" maxlength="20"></div><div><i>oder</i></div>

    <div><font size="+1">
    <b>X:</b>
    <input class="fm" type="Text" name="x" value="" size="2" maxlength="4">
    <b>Y:</b>
    <input class="fm" type="Text" name="y" value="" size="2" maxlength="4">
    </font></div>

    </tr>
    </table>

    <p><input type="image" value="ok" border="0" name="s1" src="img/tr/b/ok1.gif" width="50" height="20" onMousedown="btm1('s1','','img/tr/b/ok2.gif',1)" onMouseOver="btm1('s1','','img/tr/b/ok3.gif',1)" onMouseUp="btm0()" onMouseOut="btm0()"></input></p>
    </form></p></td>
    <td class="s2"><img src="img/un/a/w.gif" width="1" height="10" border="0"></td>
    </tr>
    </table><div class="div4">
    <table align="center" cellspacing="0" cellpadding="0"><tr class="f10" valign="top">
    <td><img src="img/un/r/1.gif" width="18" height="12" border="0" title="Odun"></td>
    <td id=l1 title=370>872/9600</td>
    <td class="s7"> <img src="img/un/r/2.gif" width="18" height="12" title="TuÄŸla"></td>
    <td id=l2 title=370>1796/9600</td>
    <td class="s7"> <img src="img/un/r/3.gif" width="18" height="12" title="Demir"></td>
    <td id=l3 title=340>2842/9600</td><td class="s7"> <img src="img/un/r/4.gif" width="18" height="12" title="Tahıl"></td>
    <td id=l4 title=216>390/7800</td>
    <td class="s7"> &nbsp;<img src="img/un/r/5.gif" width="18" height="12" alt="Tahıl tüketimi">&nbsp;312/528</td></tr></table>
    </div><div id="ba" style="position:absolute; z-index:5; border: 0px solid #000000; left: 700px; top: 100px">
    <b class="f10"><a href="dorf3.php"><span class="f10 c0 s7">Köylerin:</span></a></b><table class="f10"><tr><td nowrap><span class="c2">"</span>&nbsp; <a href="?newdid=3430">01 - Will Spliff</a></td>
    <td width="73" align="right"><table width="73" cellspacing="0" cellpadding="0" class="f8">
    <tr>
    <td width="35" align="right" nowrap>(47</td>
    <td width="3" align="center">|</td>
    <td width="35" align="left" nowrap>26)</td>
    </tr>
    </table></td></tr><tr><td nowrap><span>"</span>&nbsp; <a href="?newdid=9836">02 - Mahatma Ganja</a></td>
    <td width="73" align="right"><table width="73" cellspacing="0" cellpadding="0" class="f8">
    <tr>
    <td width="35" align="right" nowrap>(44</td>
    <td width="3" align="center">|</td>
    <td width="35" align="left" nowrap>22)</td>
    </tr>
    </table></td></tr></table><br></div></div><div class="div3">Sayfayı yükleme zamanı <b>17</b> ms<br>Serversaati: <b><span id=tp1>20:06:36</span></b> <p class="f8">E:0</p></div>
    <div id="ce"></div></body>
    </html>


    zum glueck ist die html struktur nicht auf tuerkisch ;P

    hab ich schon erwaehnt dass ich die <div>s im verdacht habe?

    alternativen waeren natuerlich auch nicht schlecht. was bei mir funktioniert ist _IEImgClick. was mir eigentlich ziemlich wichtig ist, ist dass das programm im hintergrund laufen kann und einem nicht der mauszeiger geklaut wird ;P aber dafuer ist ie.au3 ja auch da wenn ich das richtig verstanden hab.

    mfg


    //edit: ziemlich komische namen fuer die login inputs... in dem form siehts besser aus ;P

    Einmal editiert, zuletzt von Mar Bobley (24. September 2006 um 20:13)

  • hmm, sehr komisch ich habe die Seite jetzt bei mir lokal getestet und hatte keine Probleme. Die DIV's dürften keine Rolle spielen. Auch die iframe's stören nicht, weil die nur für die Werbung auf der Seite sind.

    Spoiler anzeigen
    [autoit]


    #include <ie.au3>
    $oIE = _IECreate ("file:///marbobley.htm")
    _IELoadWait($oIE)
    $o_form = _IEFormGetObjByName($oIE, "snd")
    $o_feld1 = _IEFormElementGetObjByName($o_form, "t1")
    _IEFormElementSetValue($o_feld1, "123")
    $o_feld2 = _IEFormElementGetObjByName($o_form, "t2")
    _IEFormElementSetValue($o_feld2, "456")
    $o_send = _IEGetObjByName($o_form, "s1")
    $o_send.click()

    [/autoit]

    JavaScript kann es auch nicht sein, das habe ich lokal eingebunden... *rätzel*

  • also lokal bekomm ich das garnicht hin... kann die seite irgendwie nicht anzeigen. ich nehme an file:///marbobley.htm ist im verzeichnis des scripts.

    online gibt dein code den gleichen fehler den ich oben schon gezeigt habe.

  • in der ie.au3 auf Zeile 145 stehen bei mir nur Kommentare. Ich habe Dir mal ne Zip-Datei angehängt. Darin findest Du die lokale Seite, plus die ie.au3 die ich nutze.

    Zitat


    $o_object.fireEvent ("OnChange")

    die Zeile gibt es in meiner ie.au3 überigens gar nicht ;)

    Edit:

    upps die Zeile gibt es doch... hatte da vorhin wohl noch ne alte version dazwischen. :hammer:

  • na dann bin ich ja mal gespannt.. vll lags nur an meine ie.au3 version.

    uebrigens es ist die zeile 1458. habe den text aus der console auch in in code tags gepackt weil die 1458 durch einen smiley verhunzt wurde.

    ...

    local laueft es jetzt so halb 123 traegt er ein aber 456 nicht

    online ist es das gleiche + mein prog bricht ab

    gibt es eine moeglichkeit dass ich einstellen kann dass diese fehler nicht beachtet werden?

    Einmal editiert, zuletzt von Mar Bobley (24. September 2006 um 22:16)

  • versuche es mal mit
    _IEFormElementSetValue($o_feld1, "123",0)
    damit wird kein Event erzeugt, nachdem etwas eingegeben wurde.

  • JAAAAAAAAAAA DANKE!!!

    genau das hat geklappt. ich vermute es laufen irgend welche antibot scripte da auf dem server.

    super ich hoffe ich kann dir vll spaeter auch mal helfen ;P

    jetz kann ich loslegen mit den wichtigen sachen in meinem script ;P

    *freu*

    mfg mar bobley