2016-12-19 3 views
0

Ich schreibe ein Automatisierungsskript mit AHK und habe bereits ihre Foren und Live-Chat ohne Erfolg durchlaufen.Javascript mit COM-Objekt

Mein Problem ist, dass ich ein COM-Objekt zum Navigieren und Klicken auf eine Webseite verwenden. Das Navigationsmenü auf der Webseite ändert jedoch nicht die URLs, wenn Sie zu einem anderen Teil der Website gehen. Stattdessen verwenden sie einen "Hauptcontroller", so dass die URL in der Adressleiste sich nie ändert, aber die Webseite tut es.

Ich habe keinen Zugriff auf den Quellcode, aber vom Elementinspektor im Webbrowser kenne ich den Namen der JavaScript-Funktion und die Argumente, die er aufruft, um auf die gewünschte Seite zu gelangen.

Ich frage mich, ob es eine Möglichkeit gibt, durch das com-Objekt oder eine andere Methode die JavaScript-Funktion aufzurufen, obwohl ich keinen direkten Zugriff auf den Quellcode habe?

Danke für jede Eingabe.

Antwort

0

Ja, natürlich gibt es. Lassen Sie Ihr Skript einfach auf die Adressleiste und auf das Skript zugreifen. ZB:

javascript:alert("Hello World"); 

Und beachten Sie, einige Browser den ersten Teil Streifen aus, und Sie zurück auf ein Suchergebnis geben, so können Sie AHK haben müssen, nach der Eingabe/Einfügen in dem Befehl, an den Anfang zurück und Geben Sie den javascript: Teil erneut ein.

Nun, ob das funktioniert, wenn Sie eine Funktion aufrufen, ohne auf die Quelle zu verweisen, kann ich nicht sagen, aber dann könnten Sie in Ihrem Beitrag weitere Details angegeben haben.

+0

Ich habe gerade versucht, und alles, was es tut, ist auf die Seite zurückkehren, die ich ursprünglich war. Ich schätze, ich weiß nicht wirklich, welche Details ich dir geben kann. Ich kann nicht auf einer Webseite navigieren, weil die Schaltflächen eine JavaScript-Funktion aufrufen und die URL sich nicht ändert. Ich habe also keine Möglichkeit, ohne physische Interaktion auf eine neue Webseite zu gelangen. Dann wieder, das ist alles im ursprünglichen Beitrag. – Schwagmister

+0

Welche Website? Was macht der Button Code? Der Teufel steckt im Detail. Wenn die Seitenlieferung gerahmt ist, oder AJAX oder so etwas, müssen Sie einen Weg finden, wie AHK auf die Schaltfläche klickt, vielleicht 'Senden {Klicken Sie auf xpos, ypos, [button], [numberofclicks]}' – PGilm

+0

Es ist Sie müssen sich auf einer Website anmelden, damit Sie nichts damit anfangen können, es sei denn, Sie können sich anmelden. Wie ich sagte, müssen Sie auf die Schaltfläche klicken, wenn Sie den Mauszeiger über das Menü bewegen. Dies muss ein generisches Skript sein, so dass ich kein exaktes x und y angeben kann, da sich die Bildschirmgröße, auf der diese verwendet wird, ändern kann. Auch oben erklärt, dass der Button-Code eine JavaScript-Funktion aufruft, die die Webseite verändert. Aber ich habe keinen Zugang zu der oben genannten Quelle, daher könnte ich Ihnen nicht sagen, was genau das ist. – Schwagmister