Le guide du débutant pour l'écriture de scripts Greasemonkey
NouvellesL'idée derrière Greasemonkey est assez simple. C'est une extension Firefox, installée de la même manière que toute autre extension Firefox (trouvez-la dans le menu Outils> Modules complémentaires et cliquez sur Installer).
Cependant, cela ne fait rien en soi: il vous permet d'exécuter des scripts, soit par d'autres personnes, soit par vous-même, ce qui modifiera l'apparence et le fonctionnement des pages Web..
Les scripts utilisateur de Greasemonkey sont les éléments de code qui font le travail. Greasemonkey lui-même charge et gère ceux-ci. Les scripts utilisateur sont écrits en JavaScript, mais soyez averti: pour des raisons de sécurité, il ne suffit pas d'écrire du code JavaScript classique..
Il y a quelques pièges à connaître, bien que les scripts de ce guide n'en rencontrent aucun. Une note rapide si vous ne connaissez pas JavaScript: ce guide n’expliquera pas la syntaxe JavaScript de manière détaillée, mais ne laissez pas cela vous empêcher de tenter votre chance. C'est tout à fait logique et les extraits de code sont tous expliqués.
Pour installer un script écrit par quelqu'un d'autre, vous devez vous rendre à son emplacement dans Firefox et cliquer sur le lien du script. Vous obtiendrez une fenêtre d’installation, comme avec une extension normale, et pourrez soit regarder le code source du script d’abord, soit, si vous vous sentez confiant, l’installer simplement..
Partie 1 - Votre premier script Greasemonkey
Greasemonkey fournit un dialogue utile pour rendre l'écriture d'un script aussi simple que possible. Dans votre fenêtre Firefox, une fois que vous aurez téléchargé et installé Greasemonkey, un petit visage de singe apparaîtra dans le coin droit de la barre d'état..
Faites un clic droit dessus et vous obtiendrez un menu incluant l'option "Nouveau script utilisateur". Cliquez dessus et vous obtiendrez une boîte de dialogue ressemblant un peu à la boîte à droite..
Le 'nom' est juste le nom de votre script - il est préférable de choisir quelque chose qui indique clairement ce qu'il fait, pour faciliter la gestion des scripts ultérieurement. L'espace de noms permet d'éviter que votre script n'entre en conflit avec d'autres.
Si vous essayez d’installer un script qui porte le même nom qu’un script déjà installé, c’est l’espace de nommage qui détermine si celui-ci écrase l’ancien (si cet espace est le même) ou coexiste avec celui-ci différent).
Vous pouvez faire plusieurs choses ici: la première consiste à utiliser votre propre site Web comme nom de domaine. Alternativement, vous pouvez utiliser http: // localhost, ou si vous avez l'intention de le télécharger sur http://userscripts.org quand tu as fini, tu peux l'utiliser.
Les versions actuelles de Greasemonkey ne vous permettront pas de le laisser vide. 'Description' est une ligne lisible par l'homme décrivant le travail du script. C'est une très bonne idée de remplir ce champ, même pour vos propres scripts - vous pouvez vous retrouver avec des piles d'objets et ils seront beaucoup plus faciles à gérer si vous fournissez des indices supplémentaires sur lesquels.
Pirater le web
Les règles "inclure" et "exclure" déterminent sur quels sites un script doit être exécuté et peuvent inclure des caractères génériques. Alors, www.example. com / * correspondra www.example.com/ et toutes les pages commençant par cette URL (alors que www.example.com/ sans l'astérisque inclura simplement la page de couverture).
Vous pouvez également utiliser des caractères génériques pour des parties de noms: http: //*.example.com/f* correspond à toute page dont le chemin commence par f, sur n’importe quel serveur du domaine exemple.com. Par défaut, la zone d'inclusion contiendra la page sur laquelle vous étiez lorsque vous avez cliqué sur l'option de nouveau script, mais vous êtes libre de la supprimer..
Si une règle d'inclusion correspond et qu'aucune règle d'exclusion ne correspond, le script s'exécutera. Si vous n'avez pas de règle d'inclusion, Greasemonkey suppose @comprendre *, c'est-à-dire que chaque URL correspond, le script sera exécuté sur chaque page que vous chargez.
Ce premier script va définir le fond d'une page en blanc - très utile en effet si vous tombez sur une page dont l'auteur a un penchant pour les roses, ou une sorte d'image de fond répétitive générant un mal de tête en quelques secondes.
Alors, choisissez un site Web dont vous souhaitez modifier l’arrière-plan et mettez-le dans le @include box (ici j'utilise www.example.com) et définissez les autres champs comme il convient.
Une fois que vous avez rempli ceci, votre éditeur préféré vous sera demandé (s'il n'y en a pas encore un), puis Greasemonkey chargera le fichier de script - qui contiendra actuellement les métadonnées - dans votre éditeur, prêt à vous accueillir. écrire quelque chose.
À ce stade, le code auquel vous êtes confronté ressemblera un peu à ceci:
// == UserScript ==
// @name changement de fond
// @namespace http://www.example.com/ juliet /
// @description Change la couleur de fond d'une page
// @include http://www.example.com/*
// == / UserScript ==
Il est maintenant temps d'écrire le script. Tout ce premier script consiste à modifier la couleur d’arrière-plan des pages des sites situés dans le comprendre domaine à blanc. (Il existe vraiment des choix de couleur de fond désagréables.)
Pour une page sans cadres ni autres complications, c'est très simple: une seule ligne.
document.body.style.background = "#ffffff";
document est la manière intégrée de se référer à la page en cours. C'est un objet DOM (Document Object Model) qui représente l'ensemble du document HTML..
Considérez ceci comme une arborescence d’éléments HTML vus comme des objets, chaque nouvel élément se ramifiant comme un "enfant" de celui qui le précède - regardez le diagramme ci-dessous, qui montre une structure possible pour la partie corps d’un HTML document.
DOM TREE: Un document HTML sous forme d'arborescence DOM - chaque nœud enfant est séparé de son nœud parent
La notation pour faire référence à un objet dans ce modèle est toplevel.child.childofchild. Donc, cette ligne prend le document, puis l'élément body, puis le style du corps, puis l'attribut background du style… et le met en blanc. (#ffffff est blanc en notation hexadécimale, ce qui est l’un des standards HTML. Vous pouvez aussi simplement utiliser du blanc.)
Essayez-le maintenant - choisissez une page avec un arrière-plan non blanc, utilisez le menu Gérer les scripts pour l'ajouter aux inclus pour votre script et rechargez la page..
Lors du test, rappelez-vous: vous ne modifiez pas réellement la page Web que vous modifiez. Vous ne faites que le changer pour vous. Donc, si vous faites quelque chose de catastrophique, pas de problème! Vous pouvez simplement désactiver votre script, ou le modifier et recharger la page. Alors n'hésitez pas à expérimenter.
Lorsque vous testez, si vous cliquez avec le bouton gauche de la souris sur le petit visage du singe, Greasemonkey sera activé / désactivé. Pour que vous puissiez l’activer, vérifier l’apparence actuelle de la page, l’activer, la recharger et voir ce que fait votre script.