Ответ 1
Попробуйте указать "файл://" в начале URL-адреса. Также используйте абсолютный путь файла:
import webbrowser, os
webbrowser.open('file://' + os.path.realpath(filename))
У меня есть файл python html_gen.py
, который пишет новый html
файл index.html
в том же каталоге и хотел бы открыть index.html
, когда запись закончена.
Итак, я написал
import webbrowser
webbrowser.open("index.html");
Но ничего не происходит после выполнения .py файла. Если я вместо этого поставлю код
webbrowser.open("http://www.google.com")
Safari откроет переднюю страницу google при выполнении кода.
Интересно, как открыть локальный файл index.html?
Попробуйте указать "файл://" в начале URL-адреса. Также используйте абсолютный путь файла:
import webbrowser, os
webbrowser.open('file://' + os.path.realpath(filename))
Преобразуйте имя файла в url, используя urllib.pathname2url
:
import os
try:
from urllib import pathname2url # Python 2.x
except:
from urllib.request import pathname2url # Python 3.x
url = 'file:{}'.format(pathname2url(os.path.abspath('1.html')))
webbrowser.open(url)