av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術文章
文章詳情頁

python 利用Pyinstaller打包Web項目

瀏覽:19日期:2022-07-07 13:39:27

最近需要用python打包一個單頁面網(wǎng)頁demo,于是準備用python包pyinstaller來打包程序。網(wǎng)上搜索了一下,大部分教程都是打包非web項目,這里分享一下打包簡單網(wǎng)頁demo的過程。

系統(tǒng)環(huán)境:win10+python3.6

一、安裝pyinstaller

pip install pyinstaller

二、打包項目

1.如果是單文件項目,pyinstaller可以通過簡單的命令進行python代碼的打包工作,其命令為:

pyinstaller -option ***.py

1.1參數(shù)option可以有多個值:

-F : 指定打包后只生成一個exe格式的文件-D : 生成一個文件目錄包含可執(zhí)行文件和相關動態(tài)鏈接庫和資源文件等(默認選項)-c : ?console, ?nowindowed 使用控制臺,無界面(默認選項)-w : ?windowed, ?noconsole 使用窗口,無控制臺

1.2注意

①再增加一個命令參數(shù) -w 可以保證點擊生成的exe文件不會彈出黑色控制臺窗口

 ②不加 -F 參數(shù)會生成一堆文件,但是運行速度快; 加-F參數(shù)生成一個exe文件,運行起來慢

2.如果不是單文件項目,而是有多級目錄(包含一些依賴的靜態(tài)資源),需要自定義打包

本文以打包自己的單頁面網(wǎng)頁demo為例,各級目錄結構如下:

python 利用Pyinstaller打包Web項目

python 利用Pyinstaller打包Web項目

2.1為了進行自定義配置打包,需要先輸出配置文件.spec文件,執(zhí)行命令:

pyi-makespec -D -w main.py

注:

-w 參數(shù)是為了保證不會產(chǎn)生黑色控制臺窗口

-D 參數(shù)生成一個文件目錄包含可執(zhí)行文件和相關動態(tài)鏈接庫和資源文件等(默認選項,也可以不加)

生成的 main.spec 文件如下:

python 利用Pyinstaller打包Web項目

2.2為了是使打包生成后的exe文件可以加載css、js、圖片等靜態(tài)資源,這里需要添加依賴路徑(注意:要保證自己 html 里面加載靜態(tài)資源的路徑是相對路徑才行)。具體來說,此類資源文件的打包需要設置Analysis的datas,如下:

python 利用Pyinstaller打包Web項目

2.3執(zhí)行打包命令:

pyinstaller main.spec

成功!

最終結果:

python 利用Pyinstaller打包Web項目

python 利用Pyinstaller打包Web項目

3.一些報錯

①執(zhí)行打包命令時,報錯:RecursionError: maximum recursion depth exceeded

原因:應該是python庫遞歸遍歷太深,超過了python預設的遞歸深度,導致出現(xiàn) “RecursionError: maximum recursion depth exceeded' 的錯誤

解決辦法:在spec文件里設置一個大點的遞歸深度,在該文件第二行,添加代碼如下:

import syssys.setrecursionlimit(50000)

②python打包pywebview時,可能會報錯:WebBrowserInterop.x64.dll not found

原因:這是由于系統(tǒng)沒有找到WebBrowserInterop.x64.dll

解決辦法:將WebBrowserInterop.x64.dll文件的所在路徑添加到系統(tǒng)環(huán)境變量里即可!

WebBrowserInterop.x64.dll文件的所在路徑:

python 利用Pyinstaller打包Web項目

添加到系統(tǒng)環(huán)境變量:

python 利用Pyinstaller打包Web項目

4.注意事項

①如果生成的exe文件雙擊無法正常運行,也沒有報錯提示,此時,如果想看具體報錯信息,就不要直接雙擊執(zhí)行,而是在控制臺下執(zhí)行。如果這樣還是無法看到報錯信息,則在打包軟件時不要使用 -w 參數(shù),這樣在運行生成的exe時就可以彈出黑色控制臺窗口,從而就可以在黑色控制臺上面看到報錯信息

②如果要減小打包體積,可以使用conda創(chuàng)建python虛擬環(huán)境,然后只安裝需要的包,最后再進行打包,這樣體積會大大減小

以上就是python 利用Pyinstaller打包Web項目的詳細內(nèi)容,更多關于python 打包項目的資料請關注好吧啦網(wǎng)其它相關文章!

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 久久综合影院 | 成人欧美一区二区三区黑人孕妇 | 天天插天天干 | 成人av观看 | 久久久久国产精品一区二区 | 91新视频 | 另类在线| 国产目拍亚洲精品99久久精品 | 日韩毛片 | www.日本国产 | 国产精品爱久久久久久久 | 日韩欧美国产精品综合嫩v 一区中文字幕 | 91社区在线观看播放 | 精品99在线 | 久久久久成人精品免费播放动漫 | 国产99久久久国产精品下药 | 久久久免费观看视频 | 啪啪精品 | 精品国产乱码久久久久久丨区2区 | 四虎成人免费电影 | 亚洲美女一区 | 午夜视频在线观看网址 | 51ⅴ精品国产91久久久久久 | 天久久| 日韩福利在线 | 在线一级片 | www.亚洲视频| 久久黄网 | 国产精品美女久久久av超清 | 一区二区三区四区不卡 | 不卡一区| 免费在线观看成人av | 一区二区三区四区在线免费观看 | h在线免费观看 | 国产色婷婷久久99精品91 | 国产精品久久国产精品 | 99精品欧美一区二区三区综合在线 | 狠狠干av| 亚洲免费网站 | 亚洲一区亚洲二区 | 国产精品欧美一区二区 |