#coding:utf-8 import time import webbrowser as web import os import random #隨機選擇一個瀏覽器打開網頁 def open_url_use_random_browser(): #定義要訪問的地址 url='https://www.baidu.com' #定義瀏覽器路徑 browser_paths=[r'C:\Program Files (x86)\Mozilla Firefox\firefox.exe', r'C:\Program Files (x86)\Google\Chrome\Application\chrome.exe', r'C:\Program Files (x86)\Opera\launcher.exe', r'C:\Users\Administrator\AppData\Roaming\qianying\qianying.exe', r'C:\Users\Administrator\AppData\Local\115Chrome\Application\115chrome.exe', r'C:\Program Files (x86)\Internet Explorer\iexplore.exe', r'D:\Program Files(x86)\SouExplorer\SogouExplorer\SogouExplorer.exe' ] #選擇一個瀏覽器 def chose_a_browser_open_url(browser_path,url): #如果傳入的瀏覽器位置不存在,使用默認的瀏覽器打開 if not browser_path: print 'using default browser to open url' web.open_new_tab(url)#使用默認瀏覽器,就不再結束進程 else: #判斷瀏覽器路徑是否存在 if not os.path.exists(browser_path): print 'current browser path not exists,using default browser' #瀏覽器位置不存在就使用默認的瀏覽器打開 browser_path='' chose_a_browser_open_url(chose_a_browser_open_url,url) else: browser_task_name=browser_path.split('\\')[-1]#結束任務的名字 browser_name=browser_task_name.split('.')[0]#自定義的瀏覽器代號 print browser_name web.register(browser_name, None,web.BackgroundBrowser(browser_path)) web.get(browser_name).open_new_tab(url)#使用新注冊的瀏覽器打開網頁 print 'using %s browser open url successful' % browser_name time.sleep(5)#等待打開瀏覽器 kill_cmd='taskkill /f /IM '+browser_task_name#拼接結束瀏覽器進程的命令 os.system(kill_cmd) #終結瀏覽器 browser_path=random.choice(browser_paths)#隨機從瀏覽器中選擇一個路徑 chose_a_browser_open_url(browser_path,url) if __name__ == '__main__': print ''''' ***************************************** ** Welcome to python of browser ** ** Created on 2017-05-07 ** ** @author: Jimy _Fengqi ** ***************************************** ''' open_url_use_random_browser()
webbrowser模塊提供了一個高級接口來顯示基於Web的文檔,大部分情況下只需要簡單的調用open()方法。
webbrowser定義了如下的異常:
exception webbrowser.Error, 當瀏覽器控件發生錯誤是會拋出這個異常
webbrowser有以下方法:
webbrowser.open(url[, new=0[, autoraise=1]])
這個方法是在默認的瀏覽器中顯示url, 如果new = 0, 那么url會在同一個瀏覽器窗口下打開,如果new = 1, 會打開一個新的窗口,如果new = 2, 會打開一個新的tab, 如果autoraise = true, 窗口會自動增長。
webbrowser.open_new(url)
在默認瀏覽器中打開一個新的窗口來顯示url, 否則,在僅有的瀏覽器窗口中打開url
webbrowser.open_new_tab(url)
在默認瀏覽器中當開一個新的tab來顯示url, 否則跟open_new()一樣
webbrowser.get([name]) 根據name返回一個瀏覽器對象,如果name為空,則返回默認的瀏覽器
webbrowser.register(name, construtor[, instance])
注冊一個名字為name的瀏覽器,如果這個瀏覽器類型被注冊就可以用get()方法來獲取。