2009-05-06 6 views
17

Je suis en train de lancer une URL de site Web dans un nouvel onglet en utilisant python de cette façon, mais il n'a pas travaillé dans ces deux façons:Lancer une page Web sur un onglet Firefox (victoire) en utilisant Python

Méthode 1:

os.system('C:\Program Files\Mozilla Firefox\Firefox.exe -new-tab http://www.google.com/'); 

et Méthode 2:

os.startfile('C:\Program Files\Mozilla Firefox\Firefox.exe -new-tab http://www.google.com/'); 

Si je ne pas ajouter les paramètres (-Nouvelle-onglet http://www.google.com/), il fonctionne, en ouvrant la page par défaut.

Répondre

45

Vous devez utiliser le module webbrowser

import webbrowser 
webbrowser.open('http://www.google.com') 

[modifier]

Si vous voulez ouvrir une URL dans un essai de navigateur non par défaut:

webbrowser.get('firefox').open_new_tab('http://www.google.com') 
+0

Oui, mais que se passe-t-il si mon navigateur par défaut n'est pas Firefox? –

+3

Si le navigateur par défaut de l'utilisateur n'est pas Firefox, devez-vous le forcer à l'utiliser? –

+0

Bon conseil. Merci. Mais n'ouvrez toujours pas la page dans un nouvel onglet au lieu d'une nouvelle fenêtre. Merci. –

3

Utilisation os.startfile() en passant seulement l'URL. Cela entraînera l'ouverture de l'URL dans un nouvel onglet/fenêtre dans le navigateur par défaut de l'utilisateur, ce qui est beaucoup plus agréable pour votre utilisateur.

+0

Même problème, je dois l'ouvrir dans Firefox au lieu du navigateur par défaut. –

4

Si vous voulez lancer un programme avec des paramètres du module subprocess est un meilleur ajustement:

import subprocess 
subprocess.call([r'C:\Program Files\Mozilla Firefox\Firefox.exe', 
    '-new-tab', 'http://www.google.com/']) 
+0

Génial, merci! –

+4

et si firefox n'était pas installé? Et si il était installé dans un répertoire différent? Ce n'est pas la bonne façon de faire. Même si cela fonctionne dans certains cas –

0

Vous pouvez essayer:

import os 
os.spawnl(os.P_NOWAIT, r'C:\Program Files\Mozilla Firefox\Firefox.exe', 
      r'FireFox', '-new-tab', 'http://www.google.com/') 
0

ouverture d'un lien sans Internet Explorer et utiliser Firefox , assurez-vous simplement que firefox est le navigateur web par défaut.

import webbrowser 


http = 'http://' 
links = input() 
b = webbrowser.open_new(http + links) 
0

Si vous utilisez Python 2.7 sur Windows 7 machine (ma configuration), si vous utilisez:

webbrowser.open('google.com') 

Il ouvrira ses portes fenêtres existantes Explorer (ouais je sais bien ...).

MAIS, si vous utilisez:

webbrowser.open('http://google.com') 

Il va charger l'URL dans votre navigateur Web par défaut, dans mon cas Firefox.

Questions connexes