11.1 webbrowser --- Contrôleur pratique pour navigateur Web

Le module webbrowser fournit une interface de très haut niveau pour permettre la présentation de documents basés sur le Web aux utilisateurs. Les objets contrôleur sont faciles à utiliser et sont indépendants de la plateforme.

Sous , on utilise de préférence des navigateurs graphiques sous X11, mais on se servira de navigateurs en mode texte si on n'a pas de navigateur graphique, ou s'il n'y a pas d'affichage X11. Si on utilise un navigateur en mode texte, le processus appelant bloquera jusqu'à ce que l'utilisateur quitte le navigateur.

Pour les plateformes non-Unix, ou si on dispose de navigateur X11 sous , le processus contrôleur n'attendra pas que l'utilisateur en ait terminé avec le navigateur, mais permet au navigateur de maintenir sa propre fenêtre sur le dispositif d'affichage.

L'exception suivante est définie:

Error
Exception déclenchée quand une erreur de contrôle de navigateur se produit.

Les fonctions suivantes sont définies:

open(url[, nouveau])
Affiche url en utilisant le navigateur par défaut. Si nouveau est vrai, une nouvelle fenêtre de navigateur est utilisée, si c'est possible.

open_new(url)
Ouvre url dans une nouvelle fenêtre du navigateur par défaut, si possible, sinon ouvre url dans l'unique fenêtre du navigateur.

get([nom])
Retourne un objet contrôleur pour le type de navigateur nom.

register(nom, constructeur[, instance])
Enregistre le type de navigateur nom. Une fois qu'un type de navigateur est enregistré, la fonction get() peut retourner un contrôleur pour ce type de navigateur. Si instance n'est pas fourni, ou vaut None, constructeur sera appelé sans paramètre pour créer une instance si nécessaire. Si instance est fourni, constructeur ne sera jamais appelé, et peut valoir None.

Plusieurs types de navigateurs sont définis. La table suivante donne les noms de type qui peuvent être passés à la fonction get() et les noms des classes d'implémentation, toutes définies dans ce module.

Nom de type Nom de classe Notes 
'netscape' Netscape 
'kfm' Konquerer(1)
'grail' Grail 
'windows-default' WindowsDefault(2)
'internet-config' InternetConfig(3)
'command-line' CommandLineBrowser 

Notes:

(1)
``Konquerer'' est le gestionnaire de fichier pour l'environnement de bureau KDE pour Unix, et n'a de sens que si KDE tourne. Il serait bien de disposer d'une façon fiable de détecter KDE ; la variable $KDEDIR n'est pas suffisante.

(2)
Seulement sur les plateformes Windows; nécessite les modules d'extension communs win32api et win32con.

(3)
Seulement sur plateformes MacOS; nécessite le module standard MacPython ic, décrit dans le manuel Macintosh Library Modules.


Sous-sections
  1. Objets contrôleurs de navigateurs