回答編集履歴
1
Update
test
CHANGED
@@ -13,9 +13,27 @@
|
|
13
13
|
"netscape", "opera", iexplore):
|
14
14
|
if shutil.which(browser):
|
15
15
|
register(browser, None, BackgroundBrowser(browser))
|
16
|
+
|
17
|
+
:
|
18
|
+
|
19
|
+
#
|
20
|
+
# Platform support for Windows
|
21
|
+
#
|
22
|
+
if sys.platform[:3] == "win":
|
23
|
+
class WindowsDefault(BaseBrowser):
|
24
|
+
def open(self, url, new=0, autoraise=True):
|
25
|
+
sys.audit("webbrowser.open", url)
|
26
|
+
try:
|
27
|
+
os.startfile(url)
|
28
|
+
except OSError:
|
29
|
+
# [Error 22] No application is associated with the specified
|
30
|
+
# file for this operation: '<URL>'
|
31
|
+
return False
|
32
|
+
else:
|
33
|
+
return True
|
16
34
|
```
|
17
35
|
|
18
|
-
最初に `register("windows-default", WindowsDefault)` があるので、既定のプログラムが設定されている場合にローカルな HTML ファイルを指定すると html編集ソフトが立ち上がってしまうのだと思います。
|
36
|
+
最初に `register("windows-default", WindowsDefault)` があって `os.startfile(url)` で指定した URL をオープンしているので、既定のプログラムが設定されている場合にローカルな HTML ファイルを指定すると html編集ソフトが立ち上がってしまうのだと思います。
|
19
37
|
|
20
38
|
Windows の場合、「既定のブラウザ」をレジストリから取得できるはずなので、以下の様にすると期待通りの結果になるかもしれません。よろしければ試してみて下さい。
|
21
39
|
```python
|