Page 1 of 1

HTML Element auslesen

Posted: 25 Jan 2016, 04:13
by Gidget
Servus liebe Community,

folgendes Problem, undzwar möchte ich vom Browsergame "Die Stämme" eine Zahl auslesen.

Image

Das Ding ist, ich habe es mit "URLDownloadtoFile" versucht, jedoch ohne Erfolge, es kommt dann leider immer nurn Minifile rauß mit 5 Links jedoch keine richtigen "Elemente"
Ebenso habe ich es mit ComObj versucht, mit dem komme ich leider nicht so zurecht, da ich nicht weiß welche FormNummer und welche ElementNummer ich hernehmen muss, wie bekomm ich das rauß?

Ich würde mich über Hilfe rießig freuen.

Mit freundlichen Grüßen
Gidget

Re: HTML Element auslesen

Posted: 30 Jan 2016, 09:26
by nnnik
Wie sehen denn deine Versuche mit ComObject aus?

Re: HTML Element auslesen

Posted: 02 Feb 2016, 16:29
by Gidget
Oh, sorry für meine späte Antwort, ich habe nichtmehr mit Hilfe gerechnet.

Sehr sehr gut, habe mich da jetzt selbst weitestgehend durchgekämpft.

Code: Select all

troopslight := wb.document.getElementsbyClassName("unit-item unit-item-light ")[0].innerText ;zeigt aktuelle Truppen beim Farmassi an
Soweit funktioniert alles. So sind grundsätzlich alle meine Aufrufe aufgebaut

Code: Select all

smithwood := wb.document.getelementbyid("main_buildrow_smith").queryselector("TD.cost_wood").innertext ;zeigt benötigtes Holz an für den Bau der Schmiede
Das erscheint mir extrem ineffizient und exotisch, funktioniert aber auch.

Ich habe es versucht wie eine Art "Pfad" zu behandeln. Aber iwie ist es immernoch extrem schwierig.

Ich tu mich auch mit den Begrifflichkeiten extremst schwer. Element, Class, TD, ID. Leider finde ich dazu nicht wirklich in Bezug auf mein Problem Hilfe.

Wie hole ich mir etwas wenn ich eine ID besitze und in der ID mehrere Classen sind, und darunter wieder ID´s und diese benötige ich? Hast du für mich einen Tip?

Oder was ich auch noch nicht verstehe wie komme ich an die Javascript-Daten heran. Das würde so einiges erleichtern.

Zb. das hier: var game_data = {"player":{"id":"123456","name":"xxxxx","ally usw usw...

Code: Select all

wb.Navigate("javascript: alert(game_data.village.wood);")


Mit dieser Methode zeigt es mir in dem Popup genau das an was ich benötige. Nur wie hol ich mir das ins ahk-script rein? ohne das hässliche Popup :D

Du würdest mir wirklich sehr weiterhelfen.

Grüße Gidget :)

EDIT: Hier noch ein Thema was ich auch noch nicht überrissen habe... Wie genau komme ich an "Bauernhof" ran? Wie kann ich das auslesen?

Image

Re: HTML Element auslesen

Posted: 03 Feb 2016, 16:26
by nnnik
Ich muss mich da selber informieren. Es wäre ganz nett wenn du die HTML Datei posten könntest.

Re: HTML Element auslesen

Posted: 03 Feb 2016, 18:37
by nnnik
Wäre es möglich, dass du über wb.Navigate den Wert wb.Navigate("javascript: alert(%Irgendein javascript code%);") einfach den Wert in die Teile des .documents verschiebst auf dei du Zugriff hast.
Danach könntest du diesen Wert auslesen, und wenn du willst auch den alten Wert wiederherstellen.

Re: HTML Element auslesen

Posted: 04 Feb 2016, 06:38
by Gidget
Den Wert zuerst auf ein Element zu schieben und anschließend dann auf dieses Element zuzugreifen, auf diese Idee bin ich auch schon gekommen. Nur leider ist das alles andere als effektiv, außerdem hab ichs nicht zum laufen gebracht -.-"

Wenn ich URLdownloadtofile verwende, dann kommt da nix verwertbares rauß :(

EDIT:
Wäre es nicht möglich das Element über den, unten markierten Pfad zu erreichen? Das würde alles wesentlich erleichtern.
Geht das?

Hier das Bild:
Image