Light-weight renderer HTML with CSS in Python

2020-02-04 13:48发布

Sorry, perhaps I haven't described the problem well first time. All your answers are interesting, but most of them are almost full-featured web browsers, my task is much simpler.

I'm planning to write a GUI application using one of the available on linux GUI frameworks (I haven't yet chosen one). I shall use html in my application to render into one of my application frames text with some attributes — different fonts etc, which are stored in CSS.

The HTML shall be generated by my application, so the only task is to render a HTML / CSS string. Is there any widget which can do only that render and nothing more — no history, no bookmarks, no URL-loading etc? If there isn't I shall use one of those you advised — it's ok — but I'm just interested if there is just an html-renderer without any extra features.

3条回答
【Aperson】
2楼-- · 2020-02-04 14:22

Flying Saucer Project -- an XHTML renderer.

No, it's not Python. It's -- however -- trivially called from Python.

查看更多
我命由我不由天
3楼-- · 2020-02-04 14:29

You should use a UI framework:

An other option is to open the OS default web browser through something like this:

import webbrowser
url = 'http://www.python.org'

# Open URL in a new tab, if a browser window is already open.
webbrowser.open_new_tab(url + '/doc')

# Open URL in new window, raising the window if possible.
webbrowser.open_new(url)

You can find more info about the webbrowser module here. I think that the simplest way would be to use the os browser if you are looking for something very light-weight since it does not depend on a framework and it would work in all platforms. Using Tk may be an other option that is light and will not require to install a 3rd party framework.

查看更多
▲ chillily
4楼-- · 2020-02-04 14:31

Maybe HulaHop could be interesting for you (can also be combined with Pyjamas). The Mozilla Prism Project might also be relevant.

查看更多
登录 后发表回答