#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'
]
#选择一个浏览器
'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:579817333
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
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()方法来获取。
网友评论