Python webbrowser.ouvrir () pour ouvrir le navigateur Chrome
selon la documentation http://docs.python.org/3.3/library/webbrowser.html Il est censé s'ouvrir dans le navigateur par défaut, mais pour une raison quelconque sur ma machine il s'ouvre IE. J'ai fait une recherche google et je suis tombé sur une réponse qui dit que je dois enregistrer les navigateurs, mais je ne sais pas comment utiliser webbrowser.register() et la documentation ne semble pas être très clair. Comment puis-je enregistrer Chrome de sorte que les urls que je passe à webbrowser.open () open in Chrome au lieu de IE?
7 réponses
Vous pouvez appeler get () avec le chemin de Chrome. Voici un exemple - remplacez chrome_path avec le chemin correct pour votre plate-forme.
import webbrowser
url = 'http://docs.python.org/'
# MacOS
chrome_path = 'open -a /Applications/Google\ Chrome.app %s'
# Windows
# chrome_path = 'C:/Program Files (x86)/Google/Chrome/Application/chrome.exe %s'
# Linux
# chrome_path = '/usr/bin/google-chrome %s'
webbrowser.get(chrome_path).open(url)
dans le cas de Windows, le chemin utilise un chemin de style UNIX, donc faites le backslash en slash vers l'avant.
webbrowser.get("C:/Program Files (x86)/Google/Chrome/Application/chrome.exe %s").open("http://google.com")
Voir: Python: générique webbrowser.obtenir.)(open () pour chrome.exe ne fonctionne pas
import webbrowser
new = 2 # open in a new tab, if possible
# open a public URL, in this case, the webbrowser docs
url = "http://docs.python.org/library/webbrowser.html"
webbrowser.get(using='google-chrome').open(url,new=new)
Vous pouvez utiliser n'importe quel autre navigateur en changeant le paramètre 'Utiliser' comme indiqué dans un lien
En Sélénium pour obtenir l'URL de l'onglet actif essayer,
à partir de sélénium importation webdriver
pilote = webdriver.Firefox() le pilote d'impression.current_url # ceci affichera L'URL du lien actif
envoyer un signal pour changer l'onglet
pilote.find_element_by_tag_name ('body').send_keys (Keys.CTRL + Touches.ONGLET)
et encore une fois, utilisez
pilote d'impression.current_url
Je ne suis ici que pour fournir un pseudo code pour vous.
Vous pouvez mettre ceci dans une boucle et créer votre propre flux.
je suis nouveau à Stackoverflow et j'apprends encore à écrire des réponses correctes.
a Fonctionné pour moi sous windows
mettez le chemin de votre application chrome et n'oubliez pas de mettre th %s à la fin. J'essaie toujours d'ouvrir le navigateur avec du code html sans enregistrer le fichier... J'ajouterai le code quand je saurai comment.
import webbrowser
chromedir= "C:/Program Files (x86)/Google/Chrome/Application/chrome.exe %s"
webbrowser.get(chromedir).open("http://pythonprogramming.altervista.org")
>>> lien: [une page à partir de mon blog où j'explique ce]<<<
from selenium import webdriver
#driver = webdriver.Firefox()
driver = webdriver.Chrome()
driver.get("http://www.python.org")
au moins dans Windows, il doit être assez et vous ne devez pas prendre soin de chemin vers le navigateur.
import webbrowser
url='https://stackoverflow.com'
webbrowser.open (url)