这是一个 pywebview 修改版本
Project description
WebviewRevise 是一个基于 PyWebView 5.1 版本的修改版本,集成了网络拦截功能(该功能目前仅支持 EdgeChromium 作为后端引擎)。
概述
PyWebView 是一个轻量级的跨平台库,用于在 Python 应用程序中创建和控制 Webview 窗口。本项目在原有的基础上进行了扩展,添加了网络拦截功能,允许开发者拦截和修改通过 Webview 发送的网络请求。
特性
基于 PyWebView 5.1。
- 网络拦截功能,允许开发者:
拦截 HTTP 请求和响应。
修改请求头和响应头。
- 允许开发者自己控制CoreWebView2。
只需要继承filter,在 do 方法中设置即可
安装
使用 pip 安装 WebviewRevise :
pip install WebviewRevise
请注意,由于本项目是 PyWebView 的修改版本,可能需要从源代码安装或使用特定的安装步骤。
使用示例
以下是一个简单的使用示例,展示如何创建一个带有网络拦截功能的 Webview 窗口:
import webview
from webview.platforms.edgechromium import DoSomething,filter,WebView2Core
from webview.platforms.winforms import BrowserMap
class net(filter):
def do(self, edgeChrome, sender, args):
# 开启请求过滤
sender.CoreWebView2.AddWebResourceRequestedFilter("*", WebView2Core.CoreWebView2WebResourceContext.All) # *:表示所有
# 网络请求拦截回调设置
sender.CoreWebView2.WebResourceRequested += self.on_web_resource_requested # 设置回调函数
def on_web_resource_requested(self, sender, args):
"""网络请求拦截回调函数:
如果需要修改请求或响应,可以在这里进行操作
Args:
sender (_type_): Microsoft.Web.WebView2.Core.CoreWebView2 对象
args (_type_): Microsoft.Web.WebView2.Core.CoreWebView2WebResourceRequestedEventArgs对象
"""
# 例如,打印请求的 URI
print(args.Request.Uri)
# 详情请参照 Microsoft.Web.WebView2 如何使用
if __name__ == '__main__':
# 创建 Webview 窗口并设置网络请求拦截器
DoSomething.append(net())
window = webview.create_window('Simple browser',"src/index.html")
window.events.loaded += on_loaded
window.is_filter = True # 默认开启过滤拦截
webview.start(init,window)
贡献
我们欢迎任何形式的贡献,包括但不限于:
报告问题或错误。
提供功能请求或改进建议。
许可证
本项目采用 Modified BSD 许可证。有关更多信息,请查看 LICENSE 文件。
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 Distribution
webviewrevise-0.0.3.tar.gz
(82.9 kB
view details)
Built Distribution
File details
Details for the file webviewrevise-0.0.3.tar.gz
.
File metadata
- Download URL: webviewrevise-0.0.3.tar.gz
- Upload date:
- Size: 82.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.11.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0549c50c6a6b4432c0aca18c4aa714ecb6ecb4666a1778ca37f5dc28c5132f8e |
|
MD5 | 29a4aea215a169b82350207f5bc01340 |
|
BLAKE2b-256 | 02d091660bea0ba6f7d71d2c114186a8054042d21d8a281cd4a37e45c88cdba1 |
File details
Details for the file WebviewRevise-0.0.3-py2.py3-none-any.whl
.
File metadata
- Download URL: WebviewRevise-0.0.3-py2.py3-none-any.whl
- Upload date:
- Size: 95.0 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.11.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 04cd6829314b68494b2c1a10ff443089f286d7dd05c6fd61ef312f08c2259f21 |
|
MD5 | 76e66b4a610accd5f8665a1085eeb861 |
|
BLAKE2b-256 | b531963f5e69fcd729e3d3b237902c3039f06c26dafe4f58e071ee915e920fa5 |