2016-07-10 16 views
0
url = 'http://www.google.org/' 
chrome_path = 'C:\Program Files (x86)\Google\Chrome\Application\chrome.exe %s' 
webbrowser.get(chrome_path) 
webbrowser.open(url) 

上面會打開Chrome,這就是我想要的。網頁瀏覽器,開放瀏覽器和互聯網探索不同的網址

但是,如果我將網址更改爲url = 'reddit,它將會打開Internet Explore。爲什麼它爲不同的網址打開不同的網頁瀏覽器?我怎樣才能確保它在所有網址上以鉻形式打開?

+0

什麼是'%s'supposed在路徑字符串在做什麼? –

+0

我跟着另一個例子,它使用它。我不知道它是什麼。只有它會給我一個webbrowser.Error:找不到可運行的瀏覽器 – vandelay

+0

刪除它並傳遞實際的路徑,也應該在路徑字符串中使用'/'或者用'r'前綴 –

回答

1

這樣做:

>>> import webbrowser 
>>> browser = webbrowser.get() 
>>> browser.open('http://google.com') 
True 
>>> browser.open_new_tab('http://yahoo.com') 
True 
>>> 

webbrowser.get()通話將讓你的瀏覽器控制器對象。您可以在控制器對象上運行openopen_newopen_new_tab。這將確保命令在您打開的相同瀏覽器實例上執行。

如果您直接使用webbrowser.open() - 它會一直打開默認瀏覽器中的鏈接,在您的情況下是Internet Explorer。

因此,要重寫代碼:

chrome_path = 'C:\Program Files (x86)\Google\Chrome\Application\chrome.exe' 
chrome = webbrowser.get(chrome_path) 
chrome.open('http://google.com') 
chrome.open_new_tab('http://reddit.com') 
+0

我不是試圖打開'http://reddit.com',但只是'reddit',如果我在我的谷歌瀏覽器中鍵入'reddit'它只會表現爲谷歌搜索,這正是我想要的 – vandelay

+0

爲此,您需要使用像硒這樣的東西。即使我不確定硒是否具有該功能,但很可能是這樣。 – masnun

+0

好的,謝謝你的幫助 – vandelay