亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Pyinstaller加密打包成反編譯可執(zhí)行文件

 更新時(shí)間:2022年06月15日 09:46:14   作者:MedusaSorcerer  
這篇文章主要為大家介紹了Pyinstaller加密打包成可執(zhí)行文件方法示例。有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

前言

了解 Python 的都知道 Pyinstaller 可以將 .py 文件打包成 windows 下可執(zhí)行的 .exe 文件, 但是在我們不想讓他人反編譯獲取源碼的時(shí)候就顯得無能為力, 此時(shí)我們可以了解 .pdy 文件。

PYD

pyc 是二進(jìn)制文件, 是由 Python 編譯器進(jìn)行編譯后生成的文件, 加載速度快。pyo 是優(yōu)化編譯后的二進(jìn)制文件, 可以通過 python -O file.py 生成。pyd 則是 Python 的動態(tài)鏈接庫, 由其他語言編寫。

那 .pyd 可不可以反編譯呢?

這是文檔上的一段描述, .pyd 由 C 或者 C++ 編譯組成, 至于它是否完全不可反編譯, 我相信是不可能的, 僅是加大了反編譯的難度。

打包

你需要安裝 Cython 以及 pyinstaller 兩個(gè)擴(kuò)展包作為依賴。 Docs

將主要代理編寫至 main_code.py 文件中, 建議提供入口函數(shù) main()

編寫 build.py 代理并鍵入以下內(nèi)容:

from distutils.core import setup
from Cython.Build import cythonize
setup(
    name='隨你寫什么',
    ext_modules=cythonize([
        "main_code.py",  # 你的主要代碼封裝文件名
    ])
)

執(zhí)行 python3 build.py build_ext --inplace 生成 .pyd 文件

重命名生成的 .pyd 為 main_code.pyd

新建執(zhí)行腳本文件 run.py 并鍵入以下內(nèi)容:

from main_code import *
if __name__ == '__main__':
    main()

此時(shí)你可以嘗試修改 main_code.py 成別的名字, 并運(yùn)行 run.py 文件, 你會發(fā)現(xiàn)運(yùn)行正常。

執(zhí)行 pyinstaller -D -i xxx.ico -w run.py

最后你會發(fā)現(xiàn)你的代碼中沒有 .pyc 的主要邏輯代碼。

說明

為了使用打包的時(shí)候使用 -D 而不使用 -F?

在生成唯一 .exe 文件后執(zhí)行速度過慢, 當(dāng)然我僅僅是推薦, 你可以使用任何自定義的方式編譯你想要的效果。

以上就是Pyinstaller加密打包成反編譯可執(zhí)行文件的詳細(xì)內(nèi)容,更多關(guān)于Pyinstaller加密打包反編譯的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • opencv-python圖像讀寫模塊示例詳解

    opencv-python圖像讀寫模塊示例詳解

    這篇文章主要介紹了opencv-python圖像讀寫模塊,本文結(jié)合示例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-07-07
  • Pycharm如何自動生成頭文件注釋

    Pycharm如何自動生成頭文件注釋

    這篇文章主要介紹了Pycharm如何自動生成頭文件注釋,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-11-11
  • python 對圖片進(jìn)行簡單的處理

    python 對圖片進(jìn)行簡單的處理

    介紹一些圖片處理的Python代碼,有了這些處理代碼,我們可以很方便的處理一些圖片,Python這里處理圖片一般都使用Pillow包,有此需求的朋友可以參考下
    2021-06-06
  • jupyter notebook參數(shù)化運(yùn)行python方式

    jupyter notebook參數(shù)化運(yùn)行python方式

    這篇文章主要介紹了jupyter notebook參數(shù)化運(yùn)行python方式,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-04-04
  • 圖文講解選擇排序算法的原理及在Python中的實(shí)現(xiàn)

    圖文講解選擇排序算法的原理及在Python中的實(shí)現(xiàn)

    這篇文章主要介紹了選擇排序的原理及在Python中的實(shí)現(xiàn),選擇排序的時(shí)間復(fù)雜度為О(n²),需要的朋友可以參考下
    2016-05-05
  • Python 給下載文件顯示進(jìn)度條和下載時(shí)間的實(shí)現(xiàn)

    Python 給下載文件顯示進(jìn)度條和下載時(shí)間的實(shí)現(xiàn)

    這篇文章主要介紹了Python 給下載文件顯示進(jìn)度條和下載時(shí)間的代碼,本文通過實(shí)例代碼截圖相結(jié)合給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-04-04
  • python讀取pdf格式文檔的實(shí)現(xiàn)代碼

    python讀取pdf格式文檔的實(shí)現(xiàn)代碼

    這篇文章主要給大家介紹了關(guān)于python讀取pdf格式文檔的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-04-04
  • python多線程互斥鎖與死鎖

    python多線程互斥鎖與死鎖

    這篇文章主要介紹了python多線程互斥鎖與死鎖,多線程間的資源競爭下文我們就以task1(),task2()兩個(gè)函數(shù)為例,分別將對全局變量num加一重復(fù)一千萬次循環(huán),具有一定得參考價(jià)值,需要的小伙伴可以參考一下
    2022-02-02
  • Python學(xué)習(xí)之.iloc與.loc的區(qū)別、聯(lián)系和用法

    Python學(xué)習(xí)之.iloc與.loc的區(qū)別、聯(lián)系和用法

    loc和iloc都是pandas工具中定位某一行的函數(shù),下面這篇文章主要給大家介紹了關(guān)于Python學(xué)習(xí)之.iloc與.loc的區(qū)別、聯(lián)系和用法的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-05-05
  • Python 實(shí)現(xiàn)Numpy中找出array中最大值所對應(yīng)的行和列

    Python 實(shí)現(xiàn)Numpy中找出array中最大值所對應(yīng)的行和列

    今天小編就為大家分享一篇Python 實(shí)現(xiàn)Numpy中找出array中最大值所對應(yīng)的行和列,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-11-11

最新評論