Zwischen 2 Firefox Fenstern switchen Topic is solved

Stelle Fragen zur Programmierung mit Autohotkey

Moderator: jNizM

Dekkmate
Posts: 6
Joined: 05 Feb 2018, 16:36

Zwischen 2 Firefox Fenstern switchen

05 Feb 2018, 17:21

Hallo zusammen,

ich bin absolut neu im Umgang mit AHK und habe ein kleines Problem, das wie folgt ist:

Ich bin Hobby DJ bei einem Online Radio Sender und muss meine gespielten Tracks in eine Trackdatenbank einpflegen. Dies ist eine mühselige Arbeit und Zeitintensiv. Deshalb wollte ich dieses per AHK ein bisschen automatisieren. Dazu habe ich mittels AutoScriptWriter eine
Abfolge von Events abgespeichert, wo ich zwischen 2 Firefox Fenstern hin und her springe, und per markieren von Text und dann Copy - Paste dieses in die entsprechenden Felder der Datenbank einfüge. Das klappt auch ganz gut soweit, jedoch schreibt der AutoScriptWriter
den Titel des Fensters, in welches ich klicke, immer in den Code rein. Wenn ich jetzt das Script ausführe und das Fenster nicht den Titel trägt, welcher in dem Scrpt steht, dann wird dieses auch nicht ausgeführt !

Frage: Gibt es eine Möglichkeit, dies etwas allgemeiner zu halten, so das es egal ist, welcher Titel im Script steht ? Ich hoffe, ich konnte das Problem einigermaßen verständlich darstellen ?!? Vielleicht habt ihr ja einen Lösungsansatz für mich parat !!!

Ich bedanke mich schonmal im Voraus für Eure Mühen !!!

Gruß Dekk !!!
BoBo
Posts: 6564
Joined: 13 May 2014, 17:15

Re: Zwischen 2 Firefox Fenstern switchen

05 Feb 2018, 17:47

Wäre vorteilhaft dein script zu sehn ...
Dekkmate
Posts: 6
Joined: 05 Feb 2018, 16:36

Re: Zwischen 2 Firefox Fenstern switchen

06 Feb 2018, 15:25

Hi BoBo, hier das Script, was mit der AutoScriptWriter ausgespuckt hat !
Hoffe, es hilft ein bisschen ?!?

Code: Select all

#NoEnv  ; Recommended for performance and compatibility with future AutoHotkey releases.
; #Warn  ; Enable warnings to assist with detecting common errors.
SendMode Input  ; Recommended for new scripts due to its superior speed and reliability.
SetWorkingDir %A_ScriptDir%  ; Ensures a consistent starting directory.


^!r::
; WinWait, T4E.LIVE ADMINISTRATION AREA - Mozilla Firefox, 
; IfWinNotActive, T4E.LIVE ADMINISTRATION AREA - Mozilla Firefox, , WinActivate, T4E.LIVE ADMINISTRATION AREA - Mozilla Firefox, 
; WinWaitActive, T4E.LIVE ADMINISTRATION AREA - Mozilla Firefox, 
MouseClick, left,  828,  258
Sleep, 300
MouseClick, left,  385,  324
Sleep, 300
MouseClick, left,  626,  396
Sleep, 300
MouseClick, left,  657,  261
Sleep, 300
MouseClick, left,  402,  335
Sleep, 300
 WinWait, Find The Answer (Pig&Dan Remix) von Amadeas`, 999 auf Beatport - Mozilla Firefox, 
 IfWinNotActive, Find The Answer (Pig&Dan Remix) von Amadeas`, 999 auf Beatport - Mozilla Firefox, , WinActivate, Find The Answer (Pig&Dan Remix) von Amadeas`, 999 auf Beatport - Mozilla Firefox, 
 WinWaitActive, Find The Answer (Pig&Dan Remix) von Amadeas`, 999 auf Beatport - Mozilla Firefox, 
MouseClick, left,  103,  322
Sleep, 300
Send, {SHIFTDOWN}{END}{SHIFTUP}{CTRLDOWN}c{CTRLUP}
 WinWait, T4E.LIVE ADMINISTRATION AREA - Mozilla Firefox, 
 IfWinNotActive, T4E.LIVE ADMINISTRATION AREA - Mozilla Firefox, , WinActivate, T4E.LIVE ADMINISTRATION AREA - Mozilla Firefox, 
 WinWaitActive, T4E.LIVE ADMINISTRATION AREA - Mozilla Firefox, 
MouseClick, left,  408,  215
Sleep, 300
Send, {CTRLDOWN}v{CTRLUP}{BACKSPACE}{HOME}{DEL}
MouseClick, left,  346,  394
Sleep, 300
Send, {CTRLDOWN}v{CTRLUP}{BACKSPACE}{HOME}{DEL}
 WinWait, Find The Answer (Pig&Dan Remix) von Amadeas`, 999 auf Beatport - Mozilla Firefox, 
 IfWinNotActive, Find The Answer (Pig&Dan Remix) von Amadeas`, 999 auf Beatport - Mozilla Firefox, , WinActivate, Find The Answer (Pig&Dan Remix) von Amadeas`, 999 auf Beatport - Mozilla Firefox, 
 WinWaitActive, Find The Answer (Pig&Dan Remix) von Amadeas`, 999 auf Beatport - Mozilla Firefox, 
MouseClick, left,  42,  261
Sleep, 300
 WinWait, Find The Answer (Pig&Dan Remix) von Amadeas`, 999 auf Beatport - Mozilla Firefox, 
 IfWinNotActive, Find The Answer (Pig&Dan Remix) von Amadeas`, 999 auf Beatport - Mozilla Firefox, , WinActivate, Find The Answer (Pig&Dan Remix) von Amadeas`, 999 auf Beatport - Mozilla Firefox, 
 WinWaitActive, Find The Answer (Pig&Dan Remix) von Amadeas`, 999 auf Beatport - Mozilla Firefox, 
MouseClick, left,  43,  261
Sleep, 300
Send, {SHIFTDOWN}{END}{SHIFTUP}{CTRLDOWN}c{CTRLUP}
 WinWait, T4E.LIVE ADMINISTRATION AREA - Mozilla Firefox, 
 IfWinNotActive, T4E.LIVE ADMINISTRATION AREA - Mozilla Firefox, , WinActivate, T4E.LIVE ADMINISTRATION AREA - Mozilla Firefox, 
 WinWaitActive, T4E.LIVE ADMINISTRATION AREA - Mozilla Firefox, 
MouseClick, left,  765,  216
Sleep, 300
Send, {CTRLDOWN}v{CTRLUP}
MouseClick, left,  736,  396
Sleep, 300
Send, {CTRLDOWN}v{CTRLUP}
MouseClick, left,  2313,  589
Sleep, 300
 WinWait, Find The Answer (Pig&Dan Remix) von Amadeas`, 999 auf Beatport - Mozilla Firefox, 
 IfWinNotActive, Find The Answer (Pig&Dan Remix) von Amadeas`, 999 auf Beatport - Mozilla Firefox, , WinActivate, Find The Answer (Pig&Dan Remix) von Amadeas`, 999 auf Beatport - Mozilla Firefox, 
 WinWaitActive, Find The Answer (Pig&Dan Remix) von Amadeas`, 999 auf Beatport - Mozilla Firefox, 
Send, {SHIFTDOWN}{END}{SHIFTUP}{CTRLDOWN}c{CTRLUP}
 WinWait, T4E.LIVE ADMINISTRATION AREA - Mozilla Firefox, 
 IfWinNotActive, T4E.LIVE ADMINISTRATION AREA - Mozilla Firefox, , WinActivate, T4E.LIVE ADMINISTRATION AREA - Mozilla Firefox, 
 WinWaitActive, T4E.LIVE ADMINISTRATION AREA - Mozilla Firefox, 
MouseClick, left,  495,  239
Sleep, 300
Send, {CTRLDOWN}v{CTRLUP}
 WinWait, Find The Answer (Pig&Dan Remix) von Amadeas`, 999 auf Beatport - Mozilla Firefox, 
 IfWinNotActive, Find The Answer (Pig&Dan Remix) von Amadeas`, 999 auf Beatport - Mozilla Firefox, , WinActivate, Find The Answer (Pig&Dan Remix) von Amadeas`, 999 auf Beatport - Mozilla Firefox, 
 WinWaitActive, Find The Answer (Pig&Dan Remix) von Amadeas`, 999 auf Beatport - Mozilla Firefox, 
MouseClick, left,  249,  589
Sleep, 300
Send, {SHIFTDOWN}{END}{SHIFTUP}{CTRLDOWN}c{CTRLUP}
 WinWait, T4E.LIVE ADMINISTRATION AREA - Mozilla Firefox, 
 IfWinNotActive, T4E.LIVE ADMINISTRATION AREA - Mozilla Firefox, , WinActivate, T4E.LIVE ADMINISTRATION AREA - Mozilla Firefox, 
 WinWaitActive, T4E.LIVE ADMINISTRATION AREA - Mozilla Firefox, 
MouseClick, left,  432,  279
Sleep, 300
Send, {CTRLDOWN}v{CTRLUP}
 WinWait, Find The Answer (Pig&Dan Remix) von Amadeas`, 999 auf Beatport - Mozilla Firefox, 
 IfWinNotActive, Find The Answer (Pig&Dan Remix) von Amadeas`, 999 auf Beatport - Mozilla Firefox, , WinActivate, Find The Answer (Pig&Dan Remix) von Amadeas`, 999 auf Beatport - Mozilla Firefox, 
 WinWaitActive, Find The Answer (Pig&Dan Remix) von Amadeas`, 999 auf Beatport - Mozilla Firefox, 
MouseClick, right,  1143,  438
Sleep, 300
MouseClick, left,  1119,  641
Sleep, 300
MouseClick, left, -378,  284
Sleep, 300
 WinWait, T4E.LIVE ADMINISTRATION AREA - Mozilla Firefox, 
 IfWinNotActive, T4E.LIVE ADMINISTRATION AREA - Mozilla Firefox, , WinActivate, T4E.LIVE ADMINISTRATION AREA - Mozilla Firefox, 
 WinWaitActive, T4E.LIVE ADMINISTRATION AREA - Mozilla Firefox, 
Send, {CTRLDOWN}v{CTRLUP}
 WinWait, Find The Answer (Pig&Dan Remix) von Amadeas`, 999 auf Beatport - Mozilla Firefox, 
 IfWinNotActive, Find The Answer (Pig&Dan Remix) von Amadeas`, 999 auf Beatport - Mozilla Firefox, , WinActivate, Find The Answer (Pig&Dan Remix) von Amadeas`, 999 auf Beatport - Mozilla Firefox, 
 WinWaitActive, Find The Answer (Pig&Dan Remix) von Amadeas`, 999 auf Beatport - Mozilla Firefox, 
MouseClick, left,  451,  94
Sleep, 300
Send, {CTRLDOWN}c{CTRLUP}
MouseClick, left, -511,  302
Sleep, 300
 WinWait, T4E.LIVE ADMINISTRATION AREA - Mozilla Firefox, 
 IfWinNotActive, T4E.LIVE ADMINISTRATION AREA - Mozilla Firefox, , WinActivate, T4E.LIVE ADMINISTRATION AREA - Mozilla Firefox, 
 WinWaitActive, T4E.LIVE ADMINISTRATION AREA - Mozilla Firefox, 
Send, {BACKSPACE}{CTRLDOWN}v{CTRLUP}
 WinWait, Find The Answer (Pig&Dan Remix) von Amadeas`, 999 auf Beatport - Mozilla Firefox, 
 IfWinNotActive, Find The Answer (Pig&Dan Remix) von Amadeas`, 999 auf Beatport - Mozilla Firefox, , WinActivate, Find The Answer (Pig&Dan Remix) von Amadeas`, 999 auf Beatport - Mozilla Firefox, 
 WinWaitActive, Find The Answer (Pig&Dan Remix) von Amadeas`, 999 auf Beatport - Mozilla Firefox, 
MouseClick, left,  44,  590
Sleep, 300
Send, {SHIFTDOWN}{END}{SHIFTUP}{CTRLDOWN}c{CTRLUP}
MouseClick, left, -434,  396
Sleep, 300
 WinWait, T4E.LIVE ADMINISTRATION AREA - Mozilla Firefox, 
 IfWinNotActive, T4E.LIVE ADMINISTRATION AREA - Mozilla Firefox, , WinActivate, T4E.LIVE ADMINISTRATION AREA - Mozilla Firefox, 
 WinWaitActive, T4E.LIVE ADMINISTRATION AREA - Mozilla Firefox, 
Send, {BACKSPACE}{BA

Return
BoBo
Posts: 6564
Joined: 13 May 2014, 17:15

Re: Zwischen 2 Firefox Fenstern switchen

07 Feb 2018, 05:03

Allgemeiner den fenstertitel erfassen? Sollte mittels :arrow: SetTitleMatchMode möglich sein.

https://www.beatport.com/track/find-the ... ix/5742856

Ich versuch das mal nachzuvollziehen.
Beatport ist deine Quelle (denn von dort kopierst du (wahrscheinlich) den gespielten song/fenstertitel)
T4E.LIVE ADMINISTRATION AREA ist dein/e datenbankinterface/zielapplikation (denn dort fügst du den ermittelten titel ein)
Firefox gibt den titel eines aktuell gespielten songs als tabbeschriftung aus.

Frage1: Gibt es keine möglichkeit den songindex vorab zu bauen und anschließend als ganzes an die zielapplikation zu übergeben (zB als bulkload per CSV-datei).
Frage2: Wenn es darum geht, für die GEMA eine liste der gespieleten titel zu erstellen, wie sähe das ausgabeformat einer solchen liste aus? Evtl wäre die eingabe in die zielapplikation schlicht unnötig da dieses format direkt mit AHK gebaut werden kann?!!
Frage3: wie wäre es die titel direkt ohne verwendung der benutzeroberfläche via AHK in die datenbank einzugeben? Wenn ihr ein kleiner laden seid sitzt der DBAdmin doch nur zwei sofas weiter. Einfach mal fragen?!
Frage4: hast du schon mal den sourcecode der Beatport liste gesichtet/-parsed? Da stehen alle songtitel (und weitere infos ID etc.) direkt drin? Warum aufm Firefox rumgeeiert anstatt auf einem statisch-wehrlosen sourcecode?
Frage5: warum nicht fröhlich die musik geDJed und dann anschließend die datenbank bespaßt - anstatt zeitgleich??
Frage6: generell ist das mausgeklicke die potentielle fehlerquelle (in kombination mit variierendem timing). Vielleicht ist es möglich das db-interface mittels javascript-bookmarklets zu füllen??
Alternativ könntest du den eingabepart auch über den InternetExplorer (sogar invisible) vornehmen. Dabei stände dir die volle funktionalität von AHK+COM zur verfügung!!
WinWait, Find The Answer (Pig&Dan Remix) von Amadeas`, 999 auf Beatport - Mozilla Firefox,
IfWinNotActive, Find The Answer (Pig&Dan Remix) von Amadeas`, 999 auf Beatport - Mozilla Firefox, , WinActivate, Find The Answer (Pig&Dan Remix) von Amadeas`, 999 auf Beatport - Mozilla Firefox,
WinWaitActive, Find The Answer (Pig&Dan Remix) von Amadeas`, 999 auf Beatport - Mozilla Firefox,
MouseClick, left, 103, 322
Sleep, 300
Send, {SHIFTDOWN}{END}{SHIFTUP}{CTRLDOWN}c{CTRLUP}
WinWait, T4E.LIVE ADMINISTRATION AREA - Mozilla Firefox,
IfWinNotActive, T4E.LIVE ADMINISTRATION AREA - Mozilla Firefox, , WinActivate, T4E.LIVE ADMINISTRATION AREA - Mozilla Firefox,
WinWaitActive, T4E.LIVE ADMINISTRATION AREA - Mozilla Firefox,
MouseClick, left, 408, 215
Sleep, 300
Send, {CTRLDOWN}v{CTRLUP}{BACKSPACE}{HOME}{DEL}
Dekkmate
Posts: 6
Joined: 05 Feb 2018, 16:36

Re: Zwischen 2 Firefox Fenstern switchen

07 Feb 2018, 07:04

Hi BoBo,

erstmal Danke für die Antwort.

Im allgemeinen hast du mit allen Fragen recht. Für mich war es für den Anfang die schnellste Lösung, die ich gefunden habe !!!
Die Daten sollen deswegen in die DB geschrieben werden, um den Hörern sofort zugriff darauf zu gewähren, damit sie direkt einen
Link anklicken können, um zum Track bei Beatport zu kommen.
Da ich mich wie gesagt mit AHK und so nicht wirklich auskenne, bin ich den Weg gegangen, das ich mir das jeweils benötigte per markieren
mit der Maus auf der Beatportseite kopiere und dann in den anderen Browser wechsele und dort in das passende Textfeld kopiere.

Mit dem Zeitgleich ist das so, das die Tracks, die ich spiele, nicht in der Datenbank vorhanden sind, und ich so während des auflegens erst
'Dummies' in der Datenbank produziere, die ich dann später mit 'Leben' fülle. Da das echt aufwändig ist, will ich das über so ein Script
realisieren. Die Beatportseiten habe ich mir nicht genau angeschaut, da ich auch überhaupt nicht weiss, wie dort die Informationen
abgelegt sind, damit ich die direkt aus dem Code abgreifen kann ?!? Ich benötige ja auch verschiedene Informationen wie
Länge des Tracks
Künstler
Label
Genre
etc.

Und selbst wenn ich das finden würde, wüsste ich nicht, wie ich per AHK die Infos damit finde, kopiere und wieder woanders einfüge.

Vielleicht kannst Du mir ja da mal ein bisschen unter die Arme greifen, wie ich im allgemeinen an sowas herangehen müsste !?!

Gruß Dekk
BoBo
Posts: 6564
Joined: 13 May 2014, 17:15

Re: Zwischen 2 Firefox Fenstern switchen

07 Feb 2018, 07:23

Demnach entsprechen die mousecoords den jeweiligen zu ermittelnden details. Welche sind das im einzelnen (wie heissen die auf dem beatport frontend)?
Dekkmate
Posts: 6
Joined: 05 Feb 2018, 16:36

Re: Zwischen 2 Firefox Fenstern switchen

07 Feb 2018, 08:02

Bin gerade auf der Arbeit und leider Internet Voll Kastrat hier !!! Ist gesperrt die Seite !!!

Ich gehe da so vor, das ich über Google nach Artist, Trackname, Beatport suche, damit ich direkt auf der Seite lande (z.B. Adrian Hour Like This Beatport). Dort kopiere ich über markieren mit der Maus und Strg+C einzeln Länge, Artist, Titel, Genre, Label, Veröffentlichungsdatum, den Link zum Coverbild, die URL aus dem Browser und switche dann immer einzeln in den anderen Browser und füge den Inhalt in die jeweilige Textbox ein.

Meintest Du das damit ?

Gruß Dekk
just me
Posts: 9424
Joined: 02 Oct 2013, 08:51
Location: Germany

Re: Zwischen 2 Firefox Fenstern switchen

07 Feb 2018, 11:23

Moin,

Du brauchst für Dein Skript in jedem Fall einen eindeutigen Fenstertitel. Du solltest also schauen, ob es unabhängig vom Songtitel 'konstante' Teile im Titel gibt. Ich würde mal schätzen, dass z.B. Beatport - Mozilla Firefox eine Möglichkeit ist.

Wenn Du das ganze WinWait/IfNotWinActive/WinAtivate/WinWaitActive Gedöns entsprechend änderst und am Anfang Deines Skripts (z.B. hinter SetWorkingDir) - wie bereits von Bobo vorgeschlagen - die Anweisung

Code: Select all

SetTitleMatchMode, 2
einfügst, könnte Dein Skript auch mit anderen Songtiteln funktionieren (auch wenn es bessere Möglicheiten geben mag, das von Dir gewollte zu erreichen).
BoBo
Posts: 6564
Joined: 13 May 2014, 17:15

Re: Zwischen 2 Firefox Fenstern switchen

07 Feb 2018, 13:51

Dekkmate wrote:Ich gehe da so vor, das ich über Google nach Artist, Trackname, Beatport suche, damit ich direkt auf der Seite lande (z.B. Adrian Hour Like This Beatport). Dort kopiere ich [...] einzeln Länge, Artist, Titel, Genre, Label, Veröffentlichungsdatum, den Link zum Coverbild, die URL aus dem Browser [...]

Code: Select all

UrlDownloadToFile, https://www.beatport.com/track/find-the-answer-pig-and-dan-remix/5742856, SourceCode.txt
Run, notepad.exe SourceCode.txt
... darin befinden sich alle infos welche du bisher per mouseclick extrahierst. Mittels IE + COM ließen sich die einzelnen elemente direkt aus der webseite abfragen (oder less sophisticated per RegEx aus der heruntergeladenen txt-datei). Kenn ich, kann ich aber nicht. Good luck :)
Dekkmate
Posts: 6
Joined: 05 Feb 2018, 16:36

Re: Zwischen 2 Firefox Fenstern switchen

07 Feb 2018, 15:19

Hallo just me und BoBo,

vielen Dank für Eure Antworten. Werde das gleich mal versuchen umzusetzen, mal sehn, wie weit ich komme mit meinem Latein !!!

Falls ich nicht weiterkomme, werd ich mich wieder vertrauensvoll an Euch wenden !!!

Gruß Dekk
Dekkmate
Posts: 6
Joined: 05 Feb 2018, 16:36

Re: Zwischen 2 Firefox Fenstern switchen  Topic is solved

07 Feb 2018, 17:46

So, habe das jetzt mal ausprobiert !!!

Das mit dem UrlDownLoadToFile hat bei mir nicht funktioniert ?!? Hab ich mit sicherheit auch falsch angewendet, sei's drum, egal !!!

Mit SetTitleMatchMode und (Beatport - Mozilla.... ) hab ich das Script soweit angepasst, das es mir 95% der sonstigen Arbeit abnimmt und somit für mich komplett ausreichen ist !!!

Ich danke Euch nochmals viel, das ihr mich auf den richtigen Weg geschubst habt !!!

Gruß und eine Gute Nacht Euch, Dekk !!!

Return to “Ich brauche Hilfe”

Who is online

Users browsing this forum: LuckyJoe and 31 guests