如何在python中安装包,手动安装python包

  如何在python中安装包,手动安装python包

  这是一个很长的故事,太长了,不能直接看最后的结论。

  整个故事

  上周,我收到一个请求,为客户写了一个小工具。他要求打包成exe文件,这当然不难。因为除了写Python的人,大部分人的电脑里都没有Python编译器,所以把它们打包成exe,让用户(windows)双击打开,是一个必要的技能。

  用Pyinstaller直接打开cmder:

  pyinstaller-Fw E:\ test \ URL _ crawler . py

  (-F打包成文件,-w是调试窗口不出现。因为我的小工具有一个GUI,所以我不需要默认的调试窗口。)

  等了好久,终于收拾完了。我一看档案,嚯,200米!难怪打包要花这么长时间。

  我在网上查了资料。有人说Anaconda内置了很多库,打包的时候把很多不必要的模块都打包进去了。应该是纯Python包装的。

  有道理。我想把虚拟机打扮的更久一点。我准备把备用笔记本拿出来重装Python打包。

  正好最近在学flask的时候用了pipenv。虽然我不知道pipenv的强大之处,但我知道它是一个管理虚拟环境和包的工具,所以我想知道是否可以使用pipenv创建一个新的python编译器来运行pyinstaller进行打包。

  于是赶紧在网上查了一下,pipenv pyinstaller,但是没有找到什么有用的信息,干脆自己试了一下。反正pipenv操作不麻烦。

  打开命令:

  #构建虚拟环境

  管道安装

  #进入虚拟环境

  管道外壳

  #安装模块

  pip中使用的模块安装gadget.py

  #还应安装打包模块。

  安装pyinstaller

  #开始打包

  pyinstaller-Fw E:\ test \ URL _ crawler . py

  包装完毕,看尺寸,11M!成功!

  后来因为客户改了需求,我又改了源代码,然后改了目录,用pipenv重新打包。结果打包后又变回了200M!我试过无数次,都回不到过去的20M!我怀疑之前的20M是我的错觉。

  但是,无论如何,我们都要先做出一份工作。200M的“小”工具用户体验肯定不好,我就用排除法看看哪个模块占用体积大,再想办法优化。我首先怀疑的是GUI。我几乎毫不犹豫地决定就是它了。我用的是PySimpleGUI(强烈推荐,基于tkinter)。我先把PySimpleGUI的内容注释掉,然后打包。你能猜到有多大?

  198M!

  看来我看错他了。几经排除,找到了漂亮的龙猫:fake_useragent。

  这个库是用来伪装请求头的,主要是我懒得复制user-agent,所以问题不大。只需注释掉fake_useragent,手动粘贴一个用户代理。

  #from fake_useragent导入用户代理

  #ua=UserAgent()

  # headers={ user-agent :ua . random }

  headers={ user-agent : Mozilla/5.0(Windows NT 6.2;WOW64) AppleWebKit/537.36 (KHTML,像壁虎一样)Chrome/30 . 0 . 1599 . 17 Safari/537.36 }

  不要用fake_useragent,14M打包成exe,已经足够好了。先说说吧。

  经过多次探索,多次放弃边缘(反复删除创作环境),终于找到了完美的包装方法。

  结论

  关键点只有一个:在虚拟环境中安装pyinstaller。

  如果你在虚拟环境中没有安装pyinstaller,也可以使用pyinstaller命令,但是调用的是你系统原来的python编译器,其中包含了很多关联库,导致即使在虚拟环境中,你打包的exe文件仍然很大。

  还有一点需要注意的是:在虚拟环境中安装你的py文件中调用的库,否则打包时无法正常工作。

  最后,检查正确的过程(假设安装了pipenv):

  #构建虚拟环境

  管道安装

  #进入虚拟环境(可以省略上一步,因为如果没有虚拟环境,将自动创建一个)

  管道外壳

  #安装模块

  pip安装请求pyquery pysimplegui fake _ user agent

  #还应安装打包模块。

  安装pyinstaller

  #开始打包

  pyinstaller-Fw E:\ test \ URL _ crawler . py

  添加了:如何将python代码打包为?exe文件

  我的python版本是3.6,最新的python版本是3.7,但是pyinstaller还不支持最新的3.7,所以不要用最新的python版本,兼容性很差。

  让我们开始吧:

  I .我们点击计算机的开始菜单并搜索cmd。

  其次,安装pyinstaller

  Python3自带pip安装程序,我们直接进入pip install pyinstaller,回车,如下图。

  三。生成。带有pyinstaller的exe文件

  1.在d盘上创建一个新的hello.py文件用于测试。

  hello.py的内容是:

  2.在命令行中找到hello.py的目录。

  3.输入pyinstaller文件名。py,也就是pyinstaller你好,py。

  Pyinstaller -F hello.py生成单个exe文件,比较简单,缺点是exe文件太大。

  或者:

  4.操作成功后,打开后在hello.py的同一个目录下会生成一个dist文件夹,找到exe文件并运行。

  打开分发文件

  双击运行它。

  成功了!你学会了吗?

  以上个人经验,希望能给大家一个参考,也希望大家多多支持剧本之家。如有错误或不足之处,请不吝赐教。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: