HTML Element auslesen

Stelle Fragen zur Automatisierung von Spielen

Moderator: jNizM

Gidget
Posts: 4
Joined: 25 Jan 2016, 03:52

HTML Element auslesen

25 Jan 2016, 04:13

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
User avatar
nnnik
Posts: 4500
Joined: 30 Sep 2013, 01:01
Location: Germany

Re: HTML Element auslesen

30 Jan 2016, 09:26

Wie sehen denn deine Versuche mit ComObject aus?
Recommends AHK Studio
Gidget
Posts: 4
Joined: 25 Jan 2016, 03:52

Re: HTML Element auslesen

02 Feb 2016, 16:29

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
User avatar
nnnik
Posts: 4500
Joined: 30 Sep 2013, 01:01
Location: Germany

Re: HTML Element auslesen

03 Feb 2016, 16:26

Ich muss mich da selber informieren. Es wäre ganz nett wenn du die HTML Datei posten könntest.
Recommends AHK Studio
User avatar
nnnik
Posts: 4500
Joined: 30 Sep 2013, 01:01
Location: Germany

Re: HTML Element auslesen

03 Feb 2016, 18:37

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.
Recommends AHK Studio
Gidget
Posts: 4
Joined: 25 Jan 2016, 03:52

Re: HTML Element auslesen

04 Feb 2016, 06:38

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

Return to “Spiele”

Who is online

Users browsing this forum: No registered users and 15 guests