Async helpers for QWebEngine
Project description
aqwebengine
Qt QWebEngine on async
steroids:
async
versions of methods to load URL and set page htmlasync
versions of methods to get page content as HTML and plain textasync
method to call python from JSasync
method to call JS from Python
Uses qasync as an engine to run PyQt/PySide2 asyncronously.
Examples
w = AQWebEngine()
...
await w.set_html_async('<b>Hello</b>, world!')
...
await w.load('https://www.example.com')
...
html = await w.to_html_async() # get current page as HTML
...
text = await w.to_plain_text() # get current page as plain text
...
await w.eval_js('function inc(x) { return x + 1; }')
result = await w.eval_js('inc(41)')
assert result == 42
...
def do_something(x):
return x + 1
w.register_python_function('do_something', do_something)
result = await w.eval_js('qt.callPython("do_something", 41)')
assert result == 42
Python API
eval_js
Asynchronously evaluates the string argument as a JS expression. Returns result to the Python caller. JSError is raised if evaluation of JS expression throws an exception.
register_python_function
Registeres a python (sync or async) function to be callable from JS (see qt.callPython JS API below).
Python function should take a single JSON-serializable parameter.
Arguments:
function_name
- the name of the function, as seen by JSfunction
- python function. Can be sync or async, should take a single JSON-serializable argument.
JS API
qt.callPython
Calls python host.
Arguments:
function_name
- the name of the registered python function- (optional)
args
- any JSON-serializable value
Python function may return JSON-serializable value, that will be returned to the JS caller.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
File details
Details for the file aqwebengine-0.0.2-py3-none-any.whl
.
File metadata
- Download URL: aqwebengine-0.0.2-py3-none-any.whl
- Upload date:
- Size: 7.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.1 importlib_metadata/4.6.1 pkginfo/1.7.1 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.2 CPython/3.9.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ac7f7e23876a0415e1cccf4137921a50b935d32fe10051b72e4ee2c463ab00db |
|
MD5 | 28c540644e67d074ebe2f3bca456bf57 |
|
BLAKE2b-256 | 70a037e6c026c70ce842d5aac398da3d9ad670904b6e8c2a8beaaf21861f22fe |