Lưu ý rằng tài liệu nói rằng:
Lưu ý rằng trên một số nền tảng, cố gắng mở tên tệp bằng hàm này, có thể hoạt động và bắt đầu chương trình liên quan đến hệ điều hành. Tuy nhiên, điều này không được hỗ trợ cũng như di động.
Đã được một thời gian kể từ khi tôi xem xét điều này, nhưng hồi ức của tôi là trên ít nhất một số hệ thống, cách nó hoạt động dưới mui xe là truyền URI đã cho đến một lệnh tích hợp cụ thể của hệ thống sau đó mở URI vào Hệ thống mặc định cho bất kỳ loại URI nào được truyền vào. Nói cách khác, ứng dụng mặc định cho một loại tệp đã cho được sử dụng. Không quan trọng nếu URI trỏ đến một tệp cục bộ hay không. Do đó, URI
import webbrowser
chrome = webbrowser.get['google-chrome'] # or webbrowser.get['chrome']
chrome.open_new_tab['chrome://newtab']
0 sẽ mở tệp PDF trên trình xem PDF mặc định của hệ thống, có thể không phải là trình duyệt. Như các tài liệu lưu ý, điều này hoạt động một cách tình cờ do việc thực hiện cơ bản.Tuy nhiên, trong một hệ điều hành khác, một lệnh cụ thể của hệ thống như vậy không tồn tại và tất cả các URI sẽ được mở trong trình duyệt web.
Bạn đã không đề cập đến hệ điều hành mà bạn đang làm việc [và tôi quên hệ điều hành nào hoạt động theo cách nào], nhưng tôi nghi ngờ bạn đang làm việc trên một hệ điều hành thuộc loại đầu tiên. Bạn có thể [một lần nữa phụ thuộc vào hệ thống bạn có] có thể ghi đè hành vi mặc định bằng cách chỉ định rằng một trình duyệt cụ thể được sử dụng.
Bạn có thể thử đặt biến môi trường
import webbrowser
chrome = webbrowser.get['google-chrome'] # or webbrowser.get['chrome']
chrome.open_new_tab['chrome://newtab']
1 dưới dạng danh sách các trình duyệt được phân tách OS.PathSep để thử theo thứ tự. Kiểm tra giá trị của import webbrowser
chrome = webbrowser.get['google-chrome'] # or webbrowser.get['chrome']
chrome.open_new_tab['chrome://newtab']
2 [import webbrowser
chrome = webbrowser.get['google-chrome'] # or webbrowser.get['chrome']
chrome.open_new_tab['chrome://newtab']
3] để xem ký tự nào được sử dụng bởi hệ thống của bạn [thường là import webbrowser
chrome = webbrowser.get['google-chrome'] # or webbrowser.get['chrome']
chrome.open_new_tab['chrome://newtab']
4 cho POSIX hoặc import webbrowser
chrome = webbrowser.get['google-chrome'] # or webbrowser.get['chrome']
chrome.open_new_tab['chrome://newtab']
5 cho Windows] và sau đó sử dụng ký tự đó để tách các mục trong danh sách. Tất nhiên, bạn có thể chỉ cần chỉ định một mục cho danh sách [chrome], trong trường hợp đó bạn không cần sử dụng dấu phân cách. Như thế này [hãy chắc chắn sử dụng đường dẫn chính xác cho hệ thống của bạn]:SET BROWSER="C:\Program Files [x86]\Google\Chrome\Application\chrome.exe"
Hoặc, bạn có thể thử sử dụng
import webbrowser
chrome = webbrowser.get['google-chrome'] # or webbrowser.get['chrome']
chrome.open_new_tab['chrome://newtab']
6 để chọn trình duyệt của mình một cách chương trình. Tuy nhiên, hỗ trợ cho Chrome đã không được thêm vào cho đến khi Python 3.3. Nếu bạn đang sử dụng Python 3.3+, thì hãy thử:import webbrowser
chrome = webbrowser.get['google-chrome'] # or webbrowser.get['chrome']
chrome.open_new_tab['chrome://newtab']
Lưu ý: Trên đây chưa được kiểm tra. Tôi không biết bạn có hệ thống nào và do đó không thể sao chép thiết lập cụ thể của bạn. Ymmv.
Update:
Như tôi đã biết bạn đang ở trên máy Windows Pre-Python 3.3 có lẽ những điều sau đây sẽ giúp ích. Bạn cũng có thể đăng ký trình duyệt để Python biết về nó:
pth = "C:\Program Files [x86]\Google\Chrome\Application\chrome.exe"
webbrowser.register['chrome', None, webbrowser.BackgroundBrowser[pth]]
chrome = webbrowser.get['chrome']
chrome.open_new_tab['chrome://newtab']
Mô -đun Python
import webbrowser
chrome = webbrowser.get['google-chrome'] # or webbrowser.get['chrome']
chrome.open_new_tab['chrome://newtab']
7 cung cấp API thuận tiện để kiểm soát trình duyệt web.1 dòng lệnh
Mô -đun Python
import webbrowser
chrome = webbrowser.get['google-chrome'] # or webbrowser.get['chrome']
chrome.open_new_tab['chrome://newtab']
7 có thể được sử dụng trực tiếp trong dòng lệnh.$ python3 -m webbrowser -t "//www.google.com"
Thực thi lệnh ở trên sẽ mở URL
import webbrowser
chrome = webbrowser.get['google-chrome'] # or webbrowser.get['chrome']
chrome.open_new_tab['chrome://newtab']
9 trong tab trang mới của trình duyệt web mặc định hệ thống.Ngoài ra, sử dụng tùy chọn
pth = "C:\Program Files [x86]\Google\Chrome\Application\chrome.exe"
webbrowser.register['chrome', None, webbrowser.BackgroundBrowser[pth]]
chrome = webbrowser.get['chrome']
chrome.open_new_tab['chrome://newtab']
0 sẽ mở URL trong cửa sổ trình duyệt web mới.2 API
2.1 Trình duyệt mặc định
Mở URL với trình duyệt web mặc định hệ thống.
#!/usr/bin/env python3
import webbrowser
a_website = "//www.google.com"
# Open url in a new window of the default browser, if possible
webbrowser.open_new[a_website]
# Open url in a new page [“tab”] of the default browser, if possible
webbrowser.open_new_tab[a_website]
webbrowser.open[a_website, 1] # Equivalent to: webbrowser.open_new[a_website]
webbrowser.open[a_website, 2] # Equivalent to: webbrowser.open_new_tab[a_website]
2.2 Chỉ định loại trình duyệt
Hơn nữa, bạn có thể chọn một trình duyệt tùy chọn để mở URL.
#!/usr/bin/env python3
import webbrowser
a_website = "//www.google.com"
webbrowser.get['safari'].open_new[a_website]
webbrowser.get['firefox'].open_new_tab[a_website]
pth = "C:\Program Files [x86]\Google\Chrome\Application\chrome.exe"
webbrowser.register['chrome', None, webbrowser.BackgroundBrowser[pth]]
chrome = webbrowser.get['chrome']
chrome.open_new_tab['chrome://newtab']
1 sẽ trả về một đối tượng bộ điều khiển cho loại trình duyệt bạn đã vượt qua. Tất cả các loại trình duyệt web có sẵn và đã đăng ký có thể được kiểm tra bởi pth = "C:\Program Files [x86]\Google\Chrome\Application\chrome.exe"
webbrowser.register['chrome', None, webbrowser.BackgroundBrowser[pth]]
chrome = webbrowser.get['chrome']
chrome.open_new_tab['chrome://newtab']
2.>>> import webbrowser
>>> webbrowser._browsers
>>> {'macosx': [None, ], 'safari': [None, ], 'firefox': [None, ]}
Nếu không chuyển loại trình duyệt hoặc chuyển
pth = "C:\Program Files [x86]\Google\Chrome\Application\chrome.exe"
webbrowser.register['chrome', None, webbrowser.BackgroundBrowser[pth]]
chrome = webbrowser.get['chrome']
chrome.open_new_tab['chrome://newtab']
3 [giá trị mặc định] đến pth = "C:\Program Files [x86]\Google\Chrome\Application\chrome.exe"
webbrowser.register['chrome', None, webbrowser.BackgroundBrowser[pth]]
chrome = webbrowser.get['chrome']
chrome.open_new_tab['chrome://newtab']
1, nó sẽ trả lại một đối tượng bộ điều khiển cho loại trình duyệt theo pth = "C:\Program Files [x86]\Google\Chrome\Application\chrome.exe"
webbrowser.register['chrome', None, webbrowser.BackgroundBrowser[pth]]
chrome = webbrowser.get['chrome']
chrome.open_new_tab['chrome://newtab']
5.Nếu
pth = "C:\Program Files [x86]\Google\Chrome\Application\chrome.exe"
webbrowser.register['chrome', None, webbrowser.BackgroundBrowser[pth]]
chrome = webbrowser.get['chrome']
chrome.open_new_tab['chrome://newtab']
5 của bạn như sau, pth = "C:\Program Files [x86]\Google\Chrome\Application\chrome.exe"
webbrowser.register['chrome', None, webbrowser.BackgroundBrowser[pth]]
chrome = webbrowser.get['chrome']
chrome.open_new_tab['chrome://newtab']
7 hoặc pth = "C:\Program Files [x86]\Google\Chrome\Application\chrome.exe"
webbrowser.register['chrome', None, webbrowser.BackgroundBrowser[pth]]
chrome = webbrowser.get['chrome']
chrome.open_new_tab['chrome://newtab']
8 sẽ trả về một đối tượng bộ điều khiển cho loại trình duyệt pth = "C:\Program Files [x86]\Google\Chrome\Application\chrome.exe"
webbrowser.register['chrome', None, webbrowser.BackgroundBrowser[pth]]
chrome = webbrowser.get['chrome']
chrome.open_new_tab['chrome://newtab']
9.>>> webbrowser._tryorder
>>> ['MacOSX', 'firefox', 'safari']
2.3 Đăng ký loại trình duyệt
Nếu bạn muốn sử dụng trình duyệt không có trong danh sách
pth = "C:\Program Files [x86]\Google\Chrome\Application\chrome.exe"
webbrowser.register['chrome', None, webbrowser.BackgroundBrowser[pth]]
chrome = webbrowser.get['chrome']
chrome.open_new_tab['chrome://newtab']
2, bạn nên đăng ký loại trình duyệt đó trước.#!/usr/bin/env python3
import webbrowser
a_website = "//www.google.com"
# last param is: update_tryorder
# update_tryorder > 0 means: append the new registered browser type into _tryorder
# update_tryorder < 0 means: insert before first element of _tryorder instead of appending
webbrowser.register['mychrome', None, webbrowser.MacOSXOSAScript['Google Chrome'], -1]
webbrowser.get['mychrome'].open_new_tab[a_website]
Ngoài ra, bạn có thể chuyển đường dẫn trình duyệt đến
pth = "C:\Program Files [x86]\Google\Chrome\Application\chrome.exe"
webbrowser.register['chrome', None, webbrowser.BackgroundBrowser[pth]]
chrome = webbrowser.get['chrome']
chrome.open_new_tab['chrome://newtab']
1 trực tiếp. Theo cách này pth = "C:\Program Files [x86]\Google\Chrome\Application\chrome.exe"
webbrowser.register['chrome', None, webbrowser.BackgroundBrowser[pth]]
chrome = webbrowser.get['chrome']
chrome.open_new_tab['chrome://newtab']
1 sẽ đăng ký loại trình duyệt phía sau hậu trường.#!/usr/bin/env python3
import webbrowser
a_website = "//www.google.com"
# Linux
# chrome_cmd = "/usr/bin/google-chrome %s"
# Windows
# chrome_cmd = "C:\Program Files [x86]\Google\Chrome\Application\chrome.exe %s"
# Mac
chrome_cmd = "open -a /Applications/Google\ Chrome.app %s"
webbrowser.get[chrome_cmd].open_new_tab[a_website]