jetzt mit 25% mehr Demo-Videos zum selben Preis ...
Beispiel: Automatischer Abruf aller Spielfilme des heutigen Tages mit dem TV-Pogramm aus EPG-/PVR-Howto (Dr. Prohacek ist einfach obligat ;-)
Automatisierungsfälle des Büro-Alltags mit Videos und kompletten Drehbüchern finden sich im Internen Bereich
Wer kennt nicht die Myriaden von Verwaltungs-, Planungs- und Finanzwerkzeugen, welche im Büroalltag fast ausnahmslos als Webanwendung mit
Internet-Explorer ober- und diversen Passwort-Zetteln unterhalb der Tastatur in immer gleichen Klick- wie Warteorgien wortwörtlich bedient werden möchten ?
Häufig genug wünscht man sich Schnittstellen für den Finanzreport, die Umstellung des Telefons oder immer gleiche/ähnliche Rechercheanfragen in Online-Systemen, während sich die Hand im demütigenden Gefühl unterlegener Ohnmacht um die Maus (untrügliches Zeichen der nächsten Erniedrigung, eines Klicki-Bunti-Betriebssystemes) krampft.
Soll z.B. der Finanzreport wie unter Office-Automatisierung mit Ruby oder Office-Automatisierung mit Perl beschrieben nächtens automatisch verarbeitet und der Arbeitsgruppe verfügbar gemacht werden, will dieser einem schnittstellen- wie humorlosen Buchhaltungs-System hinter Proxy- und Authentifizierungshürden erst einmal entlockt werden.
Die guten Nachrichten sind:
Alle Online-Systeme haben eine Schnittstelle für Wirbeltiere: das GUI
Über diese Schnittstelle sind Proxy und Authentifizierung keine Hindernisse
Alle, na ja, fast alle Webanwendungen können statt mit Maus vollständig mit Tastatur gesteuert werden
Die Anzahl grundlegender Steuerbefehle ist ebenso klein wie allgemeingültig und mächtig
Damit wird möglich, die Navigation/das Drehbuch nahezu jeder Webseite mit einer schlichten Konfigurationsdatei ohne Programmierkenntnisse zu beschreiben
Diese Datei entspricht den selbst getätigten Eingaben und ist daher mit etwas Routine und Ausprobieren in Bezug auf Sleep-Anweisungen sehr schnell erstellt
das Abarbeiten des Drehbuches erfordert lediglich eine einfache Ruby-Installation ohne weitere gems, schon gar keine kurzlebige, geschweige kommerzielle Zusatzsoftware
Kenntnisse des DOM (Document Object Model), d.h. des Quellcodes einer Webseite, sind NICHT nötig !
Vertipper sind nicht mehr möglich und Passwortkramen gehört der Vergangenheit an
Bei Start des Internet Explorers werden mehrere Prozesse erzeugt, deren numerisch kleinster den Vaterprozess des für nachfolgende Tastatureingaben zu aktivierenden Fensters bezeichnet. Dies klappt (nur) fast immer. Selten findet der Algorithmus auch keinen neuen IE-Prozess. Dann einfach Fenster schließen und Aufruf wiederholen.
Navigiert wird mit Tabulatorsprüngen. Deren Zahl stimmt (dauerhaft) genau dann, wenn IE stets mit denselben Darstellungsoptionen gestartet wird, also z.B. entweder immer oder nie die Favoriten- oder Menüleiste verwenden. Vom Autor hier bereitgestellte Scripte funktionieren etwa mit genau dieser IE-Darstellung in der Geschmacksrichtung Ohne Alles
Zwar versucht der Algorithmus, nur das neue IE-Fenster anzusteuern und ggf. wieder zu schließen; es ist jedoch hilfreich, keine weiteren IE-Fenster geöffnet zu haben
Sobald ein Batch-Lauf gestartet wurde, heißt es Hände weg von Tastatur und Maus, denn der Scripting Host übernimmt nun die Bedienung
Aufgrund der win32ole-Schnittstelle wird stets ein 32-Bit-Internet Explorer gestartet (daher keine Automatisirung von Online-Werkzeugen, welche die 64-Bit-Variante voraussetzen)
Die Ruby-Anwendung besteht aus 2 Scripten (ie.zip im Downloadbereich)
der eigentlichen Anwendung ie.rb und
allgemeingültigen Routinen in common.rb
wird von ie.rb mit require_relative eingebunden und als ../Common/common erwartet, sonst im Header ändern
Getestet ist die Anwendung mit Ruby 2.x und wird auch mit Ruby 1.9.x, jedoch wahrscheinlich nicht Ruby 1.8.x kompatibel sein
Weiteres Anwendungs-Beispiel
Jeweils (, bzw. meist)
links im Bild: Batch-Aufrufe (*.bat), Drehbücher (Screenplay*.txt) und Drehbuchteile (Include*.txt)
rechts im Bild: cmd.exe mit Ablaufanzeige der Funktionen und emulierten Tastatureingaben für den Windows Scripting Host
Buchauswahl und Seitenabruf im eigenen Cloud-Reader
und das zugehörige, anhand der eigenen Eingaben schnell abgezählte (== erstellte) Drehbuch Screenplay_Bibliothek.txt ...
... und die Technik dahinter
Start des 32-Bit-Internet-Explorer via win32ole (COM/OLE), Verbindung zu Windows-Scripting-Host (WSH) und Aktivierung (genau und nur) des Fensters mit der Prozess-ID des ältesten der eben gestarteten IE-Prozesse
Grundroutinen für IE-Start und WSH-Shell ...
Konfigurationsdatei mit Drehbuch rekursiv (Includes) einlesen ...
Verarbeitung der effektiven Konfigurationsdatei, Sonderfallbehandlung und Aufruf von OLE (für Navigation), bzw. WSH für alle anderen Tastaturkommandos mit oder ohne Wiederholung ...
Mapping von Tastaturkommandos und Übergabe an Windows-Scripting-Host ...