pyinstaller 打包中的坑

一.pyinstaller中打包的那些坑

1.python3.5以上的到github上拉取最新的代碼
2.重點坑:
涉及到cefpython3這個庫的,這個庫因為是c++寫的所有在打包的時候是無法對這個庫進行打包的汉匙,所以解決問題的辦法在于:
(1)告訴pyinstaller拉取
(2)手動復制
(3)書寫腳本
請看重點垃僚,其他的簡單腳本打包都是沒有問題的官边,百度一哈都能解決偎谁,就是關(guān)于這個cefpython3包的打包一定要注意問題

  • 有控制臺輸出的腳本 不要加 -w 加了就看不到了
  • -w 如果是圖像化的界面進行打包棋返,請加上
  • pyinstaller -D XX.py 可以進行Debug 看具體的錯誤出現(xiàn)在哪里
  • 打包的時候報錯缺少很多的DLL文件這個不影響最后的結(jié)果卷雕,可以不用管他 解決這個問題的方法也是很簡單的钱雷,直接百度就行了
  • 打包的時候可以指定 打包的圖標的 和打包的路徑骂铁,這些都可以百度
    最后附上專門解決針對cefpython3打包的代碼:
import cefpython3
import subprocess
import os
import shutil


class PyinstallerCefpython:
    def __init__(self):
        self.no_suffix_script_name = "hello_world"
        # cefpython3的包目錄
        self.cef_dir = os.path.dirname(cefpython3.__file__)
        # 獲取cefpython3包下examples目錄下的hello_world.py
        self.script_file = os.path.join(os.path.join(self.cef_dir, "examples"), "hello_world.py")

    def delete_before_generates(self):
        """刪除之前打包生成的文件"""
        print("*******正在刪除之前打包的生成文件....")
        try:
            shutil.rmtree("./dist")
            shutil.rmtree("./build")
            os.remove("{}.spec".format(self.no_suffix_script_name))
        except Exception as e:
            pass
        print("*******刪除成功!")

    def script_to_exe(self):
        # 相當于執(zhí)行打包命令: Pyinstaller hello_world.py
        print("*******開始打包cefpython3應用:", self.script_file)
        subprocess.run("Pyinstaller --hidden-import json {}".format(self.script_file))

    def copytree(self, src, dst, ignores_suffix_list=None):
        print("********正在復制將{}目錄下的文件復制到{}文件夾下....".format(src, dst))
        os.makedirs(dst, exist_ok=True)
        names = [os.path.join(src, name) for name in os.listdir(src)]
        for name in names:
            exclude = False
            for suffix in ignores_suffix_list:
                if name.endswith(suffix):
                    exclude = True
                    continue
            if not exclude:
                if os.path.isdir(name):
                    new_dst = os.path.join(dst, os.path.basename(name))
                    shutil.copytree(name, new_dst, ignore=shutil.ignore_patterns(*ignores_suffix_list))
                else:
                    shutil.copy(name, dst)

    def solve_dependence(self):
        print("*******解決依賴:復制依賴文件到執(zhí)行文件的目錄下....")
        self.copytree(self.cef_dir, "./dist/{}".format(self.no_suffix_script_name), [".txt", ".py", ".log", "examples", ".pyd", "__"])

    def exec_application(self):
        print("*******執(zhí)行成功打包的應用....")
        subprocess.run("./dist/{0}/{0}.exe".format(self.no_suffix_script_name))

    def run(self):
        self.delete_before_generates()
        self.script_to_exe()
        self.solve_dependence()
        self.exec_application()
      
    
if __name__ == "__main__":
  PyinstallerCefpython().run()

** 附上代碼的原博主:再次感謝http://www.reibang.com/p/1ca206b28e28

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末罩抗,一起剝皮案震驚了整個濱河市拉庵,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌套蒂,老刑警劉巖钞支,帶你破解...
    沈念sama閱讀 219,270評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異操刀,居然都是意外死亡烁挟,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,489評論 3 395
  • 文/潘曉璐 我一進店門骨坑,熙熙樓的掌柜王于貴愁眉苦臉地迎上來撼嗓,“玉大人,你說我怎么就攤上這事∏揖” “怎么了粉捻?”我有些...
    開封第一講書人閱讀 165,630評論 0 356
  • 文/不壞的土叔 我叫張陵,是天一觀的道長斑芜。 經(jīng)常有香客問我杀迹,道長,這世上最難降的妖魔是什么押搪? 我笑而不...
    開封第一講書人閱讀 58,906評論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮浅碾,結(jié)果婚禮上大州,老公的妹妹穿的比我還像新娘。我一直安慰自己垂谢,他們只是感情好厦画,可當我...
    茶點故事閱讀 67,928評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著滥朱,像睡著了一般根暑。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上徙邻,一...
    開封第一講書人閱讀 51,718評論 1 305
  • 那天排嫌,我揣著相機與錄音,去河邊找鬼缰犁。 笑死淳地,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的帅容。 我是一名探鬼主播颇象,決...
    沈念sama閱讀 40,442評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼并徘!你這毒婦竟也來了遣钳?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,345評論 0 276
  • 序言:老撾萬榮一對情侶失蹤麦乞,失蹤者是張志新(化名)和其女友劉穎蕴茴,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體姐直,經(jīng)...
    沈念sama閱讀 45,802評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡荐开,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,984評論 3 337
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了简肴。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片晃听。...
    茶點故事閱讀 40,117評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出能扒,到底是詐尸還是另有隱情佣渴,我是刑警寧澤,帶...
    沈念sama閱讀 35,810評論 5 346
  • 正文 年R本政府宣布初斑,位于F島的核電站辛润,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏见秤。R本人自食惡果不足惜砂竖,卻給世界環(huán)境...
    茶點故事閱讀 41,462評論 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望鹃答。 院中可真熱鬧乎澄,春花似錦、人聲如沸测摔。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,011評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽锋八。三九已至浙于,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間挟纱,已是汗流浹背羞酗。 一陣腳步聲響...
    開封第一講書人閱讀 33,139評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留紊服,地道東北人整慎。 一個月前我還...
    沈念sama閱讀 48,377評論 3 373
  • 正文 我出身青樓,卻偏偏與公主長得像围苫,于是被迫代替她去往敵國和親裤园。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 45,060評論 2 355

推薦閱讀更多精彩內(nèi)容