由于pyinstaller而出现问题。构建脚本时,在“browser.py”中
ext_path = os.path.abspath(os.path.dirname(__file__) + sep + "firefox_extension")
我们有这样的 ext_path。当您将它作为 .py 运行时它可以工作,但是当您构建它时,我认为它在 Temp 文件夹中运行并尝试在该文件夹中找到它。因此,当它没有找到时,会引发错误。我已经解决了像这样更改“browser.py”的问题:
def create_firefox_extension():
ext_path = os.path.abspath(os.path.dirname(__file__) + sep + "firefox_extension")
# safe into assets folder
zip_file = use_assets() + sep + "extension.xpi"
files = ["manifest.json", "content.js", "arrive.js"]
with zipfile.ZipFile(zip_file, "w", zipfile.ZIP_DEFLATED, False) as zipf:
for file in files:
try:
zipf.write(ext_path + sep + file, file)
except :
new_ext_path = os.getcwd()+sep+"firefox_extension"
zipf.write(new_ext_path + sep + file, file)
return zip_file
进行这些更改后,我将 firefox_extension 复制到 .exe 文件夹,它运行没有任何问题。