Je pense que ce dont j'ai besoin ici, c'est de savoir quelle ligne de commande magique ou programme de script OSA exécuter pour démarrer une URL dans un navigateur Firefox existant, s'il est en cours d'exécution, ou pour démarrer Firefox si ce n'est pas le cas. Sur Mac.webbrowser.get ("firefox") sur un Mac avec Firefox "impossible de localiser le navigateur exécutable"
Je suis en train de tester un programme Python (Crunchy Python) qui configure un serveur web puis utilise Firefox pour le frontal. Il commence l'application Web avec les éléments suivants:
try:
client = webbrowser.get("firefox")
client.open(url)
return
except:
try:
client = webbrowser.get()
client.open(url)
return
except:
print('Please open %s in Firefox.' % url)
Je Safari sur mon Mac comme valeur par défaut, mais j'ai aussi Firefox installé et en cours d'exécution. Le code ci-dessus a démarré la nouvelle URL (sur localhost) dans Safari. Crunchy ne fonctionne pas bien dans Safari. Je veux le voir dans Firefox, puisque j'ai Firefox. Sous Python 2.5, 2.6 et 2.7 (du contrôle de version) je reçois ceci:
>>> import webbrowser
>>> webbrowser.get("firefox")
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/webbrowser.py", line 46, in get
raise Error("could not locate runnable browser")
webbrowser.Error: could not locate runnable browser
Firefox est là. J'ai essayé d'utiliser webbrowser.get ("/ Applications/Firefox.app/Contenu/MacOS/firefox% s") qui démarre une nouvelle instance de Firefox puis se plaint qu'une autre instance de Firefox est déjà en cours d'exécution. Je voudrais vraiment webbrowser pour ouvrir l'URL dans un onglet/fenêtre de Firefox, si elle est déjà en cours d'exécution, ou dans un nouveau Firefox n'est pas déjà en cours d'exécution.
J'ai regardé webbrowser.py et il semble qu'il n'y ait pas de support 'firefox' pour MacOSX. C'est bon, je peux ajouter ça. Mais je ne sais pas comment ouvrir l'URL dans Firefox comme je le souhaite.
Des idées? Et pour l'instant, je peux forcer Crunchy à me donner l'URL, que je peux coller manuellement dans Firefox.
Vraiment, "webbrowser" de Python devrait le faire. Si c'est la bonne réponse générale, je vais apporter un correctif au code Python principal, à moins que vous ne vouliez être le seul à le faire? –
Allez-y. –
Je l'ai ajouté au bug tracker Python sous le numéro 7192 (voir http://bugs.python.org/issue7192). Cela inclut un patch partiel, mais je ne pense pas que ce soit une solution complète. –