开源项目 wvg 使用教程
wvg 项目地址: https://gitcode.com/gh_mirrors/wv/wvg
1. 项目的目录结构及介绍
wvg/
├── background.js
├── blockRules.conf
├── content.js
├── icon.png
├── inject.js
├── jsonview.js
├── manifest.json
├── popup.html
├── popup.js
├── popup_drawList.js
├── popup_showHistory.js
├── popup_updateNotice.js
├── selectRules.conf
├── style.css
├── LICENSE
├── README.md
└── pyodide/
└── ...
- background.js: 后台脚本文件,负责处理扩展的后台逻辑。
- blockRules.conf: 阻止规则配置文件,定义了需要阻止的内容规则。
- content.js: 内容脚本文件,负责在网页中注入逻辑。
- icon.png: 扩展图标文件。
- inject.js: 注入脚本文件,用于在网页中注入特定的JavaScript代码。
- jsonview.js: JSON视图脚本文件,用于处理JSON数据的展示。
- manifest.json: 扩展的清单文件,定义了扩展的基本信息和配置。
- popup.html: 弹出窗口的HTML文件,定义了弹出窗口的界面。
- popup.js: 弹出窗口的JavaScript文件,负责处理弹出窗口的逻辑。
- popup_drawList.js: 弹出窗口中绘制列表的脚本文件。
- popup_showHistory.js: 弹出窗口中显示历史记录的脚本文件。
- popup_updateNotice.js: 弹出窗口中更新通知的脚本文件。
- selectRules.conf: 选择规则配置文件,定义了需要选择的内容规则。
- style.css: 样式表文件,定义了扩展的界面样式。
- LICENSE: 项目的许可证文件,采用AGPL-3.0许可证。
- README.md: 项目的说明文件,包含了项目的介绍和使用说明。
- pyodide/: 包含Pyodide相关的文件,Pyodide是一个在浏览器中运行Python的库。
2. 项目的启动文件介绍
项目的启动文件主要是manifest.json
,它是Chrome和Firefox扩展的清单文件,定义了扩展的基本信息和配置。以下是manifest.json
的主要内容:
{
"manifest_version": 2,
"name": "WVGuesser Extension-NextGen",
"version": "1.0",
"description": "Chrome/Firefox extension for pen-testing to retrieve encryption keys of Widevine protected content",
"icons": {
"48": "icon.png"
},
"background": {
"scripts": ["background.js"]
},
"content_scripts": [
{
"matches": ["<all_urls>"],
"js": ["content.js"]
}
],
"browser_action": {
"default_popup": "popup.html"
},
"permissions": [
"activeTab",
"storage"
]
}
- manifest_version: 清单文件的版本,通常为2或3。
- name: 扩展的名称。
- version: 扩展的版本号。
- description: 扩展的描述。
- icons: 扩展的图标。
- background: 后台脚本的配置。
- content_scripts: 内容脚本的配置,定义了在哪些网页中注入脚本。
- browser_action: 浏览器动作的配置,定义了弹出窗口的HTML文件。
- permissions: 扩展的权限配置,定义了扩展可以访问的资源。
3. 项目的配置文件介绍
项目的配置文件主要包括blockRules.conf
和selectRules.conf
,它们分别定义了阻止规则和选择规则。
blockRules.conf
# 阻止规则配置文件
# 定义了需要阻止的内容规则
# 示例规则
block_rule_1 = "example.com/*"
block_rule_2 = "*.example.org"
selectRules.conf
# 选择规则配置文件
# 定义了需要选择的内容规则
# 示例规则
select_rule_1 = "example.com/important"
select_rule_2 = "*.example.org/important"
这两个配置文件定义了扩展在运行时需要阻止或选择的内容规则,开发者可以根据需要进行修改和扩展。