我正在尝试制作一个书签到 Chrome 扩展转换器,以制作 MV3 扩展。单击时我无法获得扩展来运行代码。它只是提供扩展程序的默认弹出窗口。
这是我的代码的相关部分:
json = """
{
"name": "%s",
"description": "%s",
"version": "1.0",
"manifest_version": 3,
"minimum_chrome_version": "120",
"background": {
"serviceworker": "main.js"
},
"permissions": [
"userScripts",
"activeTab"
],
"host_permissions": [
"*://*/*"
]
}
""" % ( name, description)
mainjs = """
chrome.action.onClicked.addListener((tab) => {
target: {tabId: tab.id},
async chrome.userScripts.register({
id: 'bookmarklet',
matches: ['*://*/*'],
js: [{ file: 'user-script.js' }]
});
});
"""
with open('manifest.json', 'w') as manifest:
manifest.write(json)
with open('main.js', 'w') as main:
main.write(mainjs)
with open('user-script.js', 'w') as us:
us.write(code)
我尝试过更改 mainjs 的各个部分,但没有任何效果。
您的代码中有几个问题。
JSON 格式:Python 字符串中的 JSON 格式似乎不正确。 JSON 中的键和值应该使用双引号,单引号会导致语法错误。
创建文件:您似乎正在尝试使用 Python 创建或写入清单文件和 JavaScript 文件。 “main.js”内容中也存在语法问题。