|
You last visited: Today at 20:08
Advertisement
[IE.au3] quelltextproblem beim script
Discussion on [IE.au3] quelltextproblem beim script within the AutoIt forum part of the Coders Den category.
10/22/2010, 14:41
|
#1
|
elite*gold: 305
Join Date: Apr 2008
Posts: 2,420
Received Thanks: 546
|
[IE.au3] quelltextproblem beim script
hallo
ich habe ein problem bei meinem script.
ich will mit der IE.au3 einen wert aus einem quelltext einer seite auslesen
aber bekomme immer den wert "0" ausgelesen obwohl das nicht so sein sollte.
um euch das besser zu verdeutlichen hier mein script + quelltext:
PHP Code:
#include <IE.au3> #include <String.au3>
$name="xxx" $pw="xxx"
$oIE=_IECreate("http://xxxxxxxxxxxxx.de/index.php?ac=login",0,0) _IELoadWait($oIE,0,30000)
$oForm = _IEFormGetCollection($oIE,0) $oUsername = _IEFormElementGetObjByname($oForm,"user") $oPassword = _IEFormElementGetObjByName($oForm,"password") _IEFormElementSetValue ($oUsername,$name) _IEFormElementSetValue ($oPassword,$pw) sleep(2500) _IEFormSubmit($oForm)
_IELoadWait($oIE,0,30000) _IENavigate($oIE,"http://xxxxxxxxxxxxxx.de/index.php?ac=marktplatz") _IELoadWait($oIE,0,30000)
$sHTML = _IEDocReadHTML ($oIE)
$string = _stringbetween($sHTML,'<td class="tdn" style="text-align: center;">','<img src="img/new-design-blau/icons/icon_money.jpg" alt="Dollars:" title="Dollars:" style="vertical-align: middle;"></td>')
MsgBox(64,"testing", $string)
hier der quelltext:
<td class="tdn" style="text-align:center;">1,51 <img src="img/new-design-blau/icons/icon_money.jpg" alt="Dollars:" title="Dollars:" style="vertical-align:middle;" /></td>
ich möchte aus diesen quelltext "1,51" ausgelesen haben aber bekomme nur eine "0" und ich weiß das dieses schema mehrmals im quelltext vorkommt ... aber nicht mit "0"
was mache ich falsch und wie kann ich nun diese 1,51 auslesen?
ps: der wert 1,51 aus dem quelltext ändert sich von tag zu tag
pps: habe noch keine ahnung wie man mit strinbetween und so umgeht ... glaube das ich total aufn holzweg bin :/
|
|
|
10/22/2010, 16:32
|
#2
|
elite*gold: 0
Join Date: Mar 2009
Posts: 2,317
Received Thanks: 1,254
|
aus MsgBox(64,"testing", $string) wird
MsgBox(64,"testing", $string[0])
schnell in der hilfe nachgeschaut:
Success: A 0 based $array[0] contains the first found string.
|
|
|
10/22/2010, 18:24
|
#3
|
elite*gold: 305
Join Date: Apr 2008
Posts: 2,420
Received Thanks: 546
|
Subscript used with non-Array variable
MsgBox(64,"testing", $string[0])
MsgBox(64,"testing", $string^ ERROR
daraus wird wohl nichts :C und ich rätsel immernoch
|
|
|
10/22/2010, 20:14
|
#4
|
elite*gold: 0
Join Date: Mar 2009
Posts: 2,317
Received Thanks: 1,254
|
hmm..
also bei mir klappts...
PHP Code:
#include <IE.au3> #include <String.au3>
$oIE=_IECreate("http://www.elitepvpers.com/forum/epvp-coders-releases/672447-kleines-hilfreiches-infotool.html",0,0) $sHTML = _IEDocReadHTML ($oIE) $string = _stringbetween($sHTML,'<strong>The Following','Users Say Thank You to omer36 For This Useful Post:</strong>')
MsgBox(64,"testing", $string[0])
|
|
|
10/22/2010, 22:20
|
#5
|
elite*gold: 2
Join Date: Mar 2008
Posts: 1,778
Received Thanks: 1,222
|
Quote:
Originally Posted by antrix99
Subscript used with non-Array variable
MsgBox(64,"testing", $string[0])
MsgBox(64,"testing", $string^ ERROR
daraus wird wohl nichts :C und ich rätsel immernoch
|
Dann ist dein Stringbetween falsch...
|
|
|
10/23/2010, 13:23
|
#6
|
elite*gold: 305
Join Date: Apr 2008
Posts: 2,420
Received Thanks: 546
|
ich hab in erfahrung gebracht das _stringbetween garnicht erst die stelle im quelltext findet und deshalb eine "0" ausgibt ... aber woran kann das jetzt legen das _stringbetween die stelle nicht findet?
|
|
|
10/23/2010, 13:28
|
#7
|
elite*gold: 2
Join Date: Mar 2008
Posts: 1,778
Received Thanks: 1,222
|
Quote:
Originally Posted by pinguin94
Dann ist dein Stringbetween falsch...
|
Parameter sind falsch...
Schick mal so ca 5 Zeilen Quelltext und markier den Wert, den du haben willst.
Ich schreib dir eben was dafür ...
|
|
|
10/23/2010, 14:18
|
#8
|
elite*gold: 305
Join Date: Apr 2008
Posts: 2,420
Received Thanks: 546
|
<tr>
<td class="tdn" colspan="2">Bananen (<a href="index.php?ac=marktplatz&showchart=1">Chart</a>)</td>
<td class="tdn" style="text-align:center;">1,41 <img src="img/new-design-blau/icons/icon_money.jpg" alt="Dollars:" title="Dollars:" style="vertical-align:middle;" /></td>
<td class="tdn" style="text-align:right;padding-right:5px;"><input class="input" type="text" name="kbananen" size="5" maxlength="12" value="0" /></td>
<td class="tdn" style="text-align:center;">1,16 <img src="img/new-design-blau/icons/icon_money.jpg" alt="Dollars:" title="Dollars:" style="vertical-align:middle;" /></td>
<td class="tdn" style="text-align:right;padding-right:5px;">
<a href="javascript:setBestand();"><img src="img/new-design-blau/icons/icon_right.jpg" alt="" title="" style="vertical-align:middle;" /></a>
<input class="input" type="text" name="vbananen" size="5" maxlength="12" value="0" />
</td>
der rote wert soll ausgelesen werden
btw: ich hab mal eine *.txt mit 3 wörtern in einer reihe gefüllt und habe _stringbetween nach dem mittleren wort suchen lassen und selbst da funktioniert es nicht
und vielen dank für eure hilfe
|
|
|
10/23/2010, 16:00
|
#9
|
elite*gold: 2
Join Date: Mar 2008
Posts: 1,778
Received Thanks: 1,222
|
Hast du den Quellcode auch aus einem AutoIt Script übernommen oder hast du Rechtsklick Quellcode anzeigen im Browser gemacht?
Weil der Quellcode kann unterschiedlich sein...
Wenn dus über AutoIt gemacht hast, dann funktioniert das hier:
Code:
#include <String.au3>
;======================================================
;$hFile = FileOpen(@ScriptDir & "\String.txt") #
;$sRead = FileRead($hFile) #
;FileClose($hFile) #
;======================================================
$aMatch = _StringBetween($sRead, '<td class="tdn" style="text-align:center;">', ' <img src="img/new-design-blau/icons/icon_money.jpg"')
ConsoleWrite($aMatch[0] & @CRLF)
Den kommentierten Part einfach mit deiner Quellcodeauslesung ersetzen und ggf. $sRead in _StringBetween anpassen.
In der String.txt stand einfach dein Quellcodestring.
|
|
|
10/23/2010, 17:22
|
#10
|
elite*gold: 305
Join Date: Apr 2008
Posts: 2,420
Received Thanks: 546
|
ich habe den quelltext per $sHTML = _IEDocReadHTML ($oIE) ausgelesen und bekam auch den richtigen quelltext wo halt alles richtig drin stand
also ich hab deine vorgabe mal in mein script übernommen welches jetzt so aussieht:
PHP Code:
... ... ... ... $sHTML = _IEDocReadHTML ($oIE) filewrite(@desktopdir & "\String.txt", $sHTML)
$hFile = FileOpen(@ScriptDir & "\String.txt") $sRead = FileRead($hFile) FileClose($hFile)
$aMatch = _StringBetween($sRead, '<td class="tdn" style="text-align:center;">', ' <img src="img/new-design-blau/icons/icon_money.jpg"') ConsoleWrite($aMatch[0] & @CRLF)
ich bin mir sicher das ich etwas falsch gemacht habe oder autoit mag mich nicht mehr
|
|
|
10/23/2010, 18:02
|
#11
|
elite*gold: 2
Join Date: Mar 2008
Posts: 1,778
Received Thanks: 1,222
|
Code:
$sHTML = _IEDocReadHTML ($oIE)
$aMatch = _StringBetween($sHTML, '<td class="tdn" style="text-align:center;">', ' <img src="img/new-design-blau/icons/icon_money.jpg"')
MsgBox(0,"", $aMatch[0])
Test mal das.
|
|
|
10/23/2010, 18:38
|
#12
|
elite*gold: 305
Join Date: Apr 2008
Posts: 2,420
Received Thanks: 546
|
seltsamerweise funktioniert selbst das nicht ... frage mich wie all die anderen das machen bei denen bots alles mögliche auslesen können
|
|
|
10/23/2010, 19:02
|
#13
|
elite*gold: 2
Join Date: Mar 2008
Posts: 1,778
Received Thanks: 1,222
|
Bei mir gehts.
|
|
|
10/23/2010, 19:28
|
#14
|
elite*gold: 0
Join Date: Jul 2008
Posts: 832
Received Thanks: 136
|
Quote:
Originally Posted by antrix99
seltsamerweise funktioniert selbst das nicht ... frage mich wie all die anderen das machen bei denen bots alles mögliche auslesen können
|
wenn ich bei mir in
PHP Code:
$sHTML = _IEDocReadHTML ($oIE) $aMatch = _StringBetween($sHTML, '<td class="tdn" style="text-align:center;">', ' <img src="img/new-design-blau/icons/icon_money.jpg"') MsgBox(0,"", $aMatch[0])
statt $sHTML den ganzen quellcode einfüge, kommt bei mir in der msgbox 1,51 raus
hier der gesammtcode (war halt nur zum test)
PHP Code:
#include <String.au3> $aMatch = _StringBetween("<td class=""tdn"" style=""text-align:center;"">1,51 <img src=""img/new-design-blau/icons/icon_money.jpg"" alt=""Dollars:"" title=""Dollars:"" style=""vertical-align:middle;"" /></td>", '<td class="tdn" style="text-align:center;">', ' <img src="img/new-design-blau/icons/icon_money.jpg"') MsgBox(0,"", $aMatch[0])
also eventuell liegt es bei dir an dem quellcode, der rausgelesen wird (wahrscheinlich wird der da irgendwie verändert)
kannst ja nochma damit versuchen:
PHP Code:
$sHTML = _IEDocReadHTML ($oIE) $aMatch = _StringBetween($sHTML, ""text-align:center;">" , " <") MsgBox(0,"", $aMatch[0])
das weitet die suche halt bisschen weiter aus, fals irgendwas davor im quelltext geändert wird
ansonsten schau erstmal ob der quelltext, der abgelesen wird
1. richtig ist
2. sich nicht verändert (also die suchhilfswerte immer so bleiben)
|
|
|
10/23/2010, 19:52
|
#15
|
elite*gold: 305
Join Date: Apr 2008
Posts: 2,420
Received Thanks: 546
|
jetzt hab ich die lösung gefunden
es lag an den groß und kleinbuchstaben im quelltext ... wenn man ihn sich so per browser guckt ist alles klein aber wenn man ihn per autoit in eine txtdatei speichert ist der echte quelltext in groß und kleinbuchstaben
es lag also nur an den groß und kleinbuchstaben und auch teils am script selbst
super das ihr mir geholfen habt leute ^^
thx for all
|
|
|
|
|
Similar Threads
|
Fehler beim eigenen Script
09/08/2010 - AutoIt - 3 Replies
Hallo, ich habe heute mein ersten Script geschrieben,
es ist ein GUI das die Programme auf den Buttons öffnen soll.
Aber da ist ein error wenn ich ihn starten will:
Dies ist mein Script:
#include <ButtonConstants.au3>
|
Adim beim Hp script von Matze²
07/22/2010 - Metin2 Private Server - 4 Replies
Moin weiß einer wie man sich ein Admin acc beim Hp script von Matze² erstellt?
|
Beim Script in der Oberleisten/LINK einstelln?
01/15/2010 - Metin2 Private Server - 6 Replies
Hallo
ich will in meinen script
so machen wen man
auf Registartion klickt
sich ne seite öffnet
in diesem falle meine Hamachi IP wegen xampp
kann mir jemand sagen was ich machen/verändern muss????
und wegen Xampp
geht mein Login immer down!!__
|
Beim Script VIDEO abspielbar??
01/07/2010 - Metin2 Private Server - 16 Replies
Hallo
ich wollte mal wissen
was ich beim script eingeben muss
also beim Index im templates ordner
das es den nen video anzeigt von youtube =DDD
mfg
|
Hilfe beim PvP Paladin Autoit Script
03/07/2009 - Diablo 2 - 1 Replies
Hi leutz,
hab mir heut mal nen autoit script editor gedownloadet
wolt mir nen script machen fürn hammadin-smiter pvp
hab auf waffen slots1 hoto und zaka und auf slot2 cta und spirit shild
nun wolte ich das ich per knopf druck aus slot1 hoto und zaka gehen grief und exil tausche aber irgentwie komm ich ich nicht so kla
das ist mein script aber irgentwie bewegt sich die maus voll langsam !!
|
All times are GMT +2. The time now is 20:08.
|
|