Greasemonkey

Webbrowser-Erweiterung
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 3. Februar 2006 um 20:41 Uhr durch DonKult (Diskussion | Beiträge) (Überarbeitung des Artikels auf Basis des engl. Artikels). Sie kann sich erheblich von der aktuellen Version unterscheiden.

Greasemonkey (englisch für Kfz-Lehrling) heißt eine Erweiterung zum Webbrowser Mozilla Firefox, die die Implementierung des Konzeptes "Active Browsing" ermöglich. Durch Greasemonkey wird es dem Nutzer erlaubt eigene JavaScript-Dateien im Browser auszuführen, die Erscheinungsbild und Verhalten der angezeigten Webseite individualisieren können, ohne einen Zugriff auf die eigentliche Webseite zu benötigen. Dadruch ist es z. B. möglich Webseiten um Funktionen zu erweitern, Fehler in der Darstellung zu beheben, Inhalte von anderen Webseiten einzubinden und wiederkehrende Aufgaben automatisch zu erledigen.

Technische Details

Greasemonkey wurde wie jede andere Erweiterung zu dem Mozilla Firefox Browser in JavaScript und XUL geschrieben. Es lässt den Benutzer JavaScripte im Browser ausführen, die die angezeigte Webseite mittels DOM-Interface manipulieren können. Diese JavaScripte werden als Greasemonkeyscripte bezeichnet und sind ohne Greasemonkey nicht direkt lauffähig, da Greasemonkey aber nur eine Vereinfachung zur Erstellung und Einbindung dieser Scripte bereitstellt gibt es von vielen Greasemonkeyscripten auch eine allein lauffähige Firefox-Erweiterung oder Bookmarklets.

Für jeden Script kann mittels einer oder mehrer regulärer Ausdrücke festgelegt werden bei welcher URL der Script eingebunden werden soll. Wird diese URL dann aufgerufen bindet Greasemonkey den Script in die Seite ein, sodass der Script sich verhält wie als wäre er von der Seite selbst eingebunden worden und diese folglich beliebig verändern kann.

Greasemonkeyscripts haben die Dateiendung .user.js, so dass sie von Greasemonkey automatisch als Scripts erkannt werden und dem User angeboten wird diese Datei zu installieren. Zusätzlich zum eigentlichen JavaScript-Quelltext enthalten die Dateien noch einige Metadaten über Autor, Arbeitsweise und Vorschläge für zu verwendende reguläre Ausdrücke.

Auch wenn Greasemonkey die Erstellung von Erweiterungen vereinfach ist doch ein Grundwissen über JavaScript und das DOM von Nöten. Allerdings ermöglicht es eine "Erweiterung zur Erweiterung" namens Platypus [1] auch im WYSIWYG-Verfahren einfache Scripte zu erstellen und zu speichern, die z.B. Teile einer Webseite ausblenden oder verschieben und diese Änderungen wiederherstellen wenn man erneut die Seite besucht.

Typische Anwendungsbereiche

Anwender haben die unterschiedlichsten Script erstellt, welche z.B.

  • in Google Mail einen Löschen-Button einbauten
  • Preise für das selbe Produkt auf anderen Webseiten anzeigen
  • viele Arten von Online-Werbung entfernen
  • das Layout einer Webseite anpassen
  • Formulare automatisch ausfüllen
  • Accesskeys zur Webseite hinzufügen

Ähnliche Software

Greasemonkey ist nur für den Mozilla Firefox verfügbar. Opera hat ab Version 8 eine ähnliche Software direkt implementiert, wordurch Greasemonkeyscripte zumeist auch in Opera ohne (große) Änderungen lauffähig sind. Für den Internet Explorer versuchen diese Funktionalität GreasemonkIE[2], Trixie [3] und Turnabout [4] bereitzustellen, wobei nur letzteres Open Source Software unter der BSD-Lizenz ist.

Viele Proxy Server erlauben unabhängig vom verwendeten Browser die angefordete Webseite vor dem Anzeigen durch den Webbrowser zu ändern, so z.B. Proxomitron. Auch gestatten Bookmarklets das Ausführen von JavaScript im Browser, diese allerdings nur durch manuellen Aufruf.

Kritik

  • Die Ausblendung von Werbung könne dazu führen, dass Webmaster ihre Webseiten nicht mehr finanzieren können. Auch könnten somit die Statistiken der Werbung manipuliert werden.
  • Durch die dynamische Einbindung von Inhalten anderer Webseiten in die Angezeigte können die Scripte, bei weiter Verbreitung, zu einem enormen Zuwachs an Traffic führen.

Siehe auch