exe文件?你也可以编写!

前言

众所周知,咱们平时 Windows 电脑下,安装软件的安装包是以 .exe 为后缀命名的,平时安装软件,只需要双击一下,即可运行。

假设你的 Windows 电脑没有 Python 环境,那如何运行py程序呢?所以将 py 转成 exe 文件,就起到了没有环境的尴尬之处。

今天就来给大家介绍个 Python 第三方库 - Pyinstaller ,有了它,你也可以拥有自己的 exe 软件!

环境准备

开始之前,先来准备一下环境,首先呢,要安装这个库。这里就用到了前几天介绍的,pipenv。回顾文章:

你应该了解的python虚拟环境与依赖管理​mp.weixin.qq.com

安装完毕后,将前几天写好的网易云脚本作为示例来演示吧。

为什么要用虚拟环境来创建?这个后续说,先留个悬念。

视频演示

视频中,音乐断开的位置,都是衔接上个等待地方的无用时间,安心观看即可。

pyinstaller示例演示https://www.zhihu.com/video/1104698115344535552

一些要注意的点

视频中,只演示了 -F 的操作,还有一个人性化的参数, -i。可以添加你喜爱的图标给 exe 装饰上。

这个参数其实是比较坑爹的,如果你用了此参数,那么请注意一下几点:

  • 不要随意更改png、jpg格式图片,直接修改为ico的格式图片,因为这样并不管用,会报一些很奇葩的错误
  • 这里我给出对应的网址,你可以先从这个网址找图片:

图标下载,ICON(SVG/PNG/ICO/ICNS)图标搜索下载 - Easyicon​www.easyicon.net

  • 通过上面的网址,下载后依然遵循第一条,不能直接修改图片后缀格式,用https://www.ico.la/这个网址去处理你的图片。最终输出的图片为xxx.ico这样的标准格式

通过以上三点,再去用-i参数,你会发现很神奇的成功显示图标,且命令行不会报错。
笔者的csdn博客,

https://blog.csdn.net/s740556472/article/details/78449612​blog.csdn.net

生成的exe文件,如果发生cmd黑框会一闪而过,教你们一个方法,只需要在源码中加入下面的代码即可暂停住 cmd 黑框,因为 cmd 中通过pause的命令是可以让黑框暂停住的。

if __name__ == '__main__':url = input('请输入具体歌单的url:n')  # https://music.163.com/playlist?id=2269661190crawl = CrawlMusic(url=url)crawl.run()os.system('pause')    # 重点!!!

总结

Pyinstaller,是一个很好地打包工具,可以将我们 py 脚本直接转为 exe 文件,开头的时候为什么让大家一定要新建一个虚拟环境呢?

因为源代码的环境中,若有过多的多余三方库,会导致生成 exe 体积过于庞大,实际上新建虚拟环境帮我们隔离了多余的库,最终生成的体积非常小,本文中生成的,仅 8 MB。

之前测试过,一个 100 行代码,由于过多的第三方库(源码中实际用到的没多少),生成的 exe 文件高达 100+ mb。

便捷打包,你,也可以编写 exe 程序!pyinstaller,值得拥有~

发现细节的你,觉得文首的图片有边框好呢?还是没边框好呢。。。欢迎留言给点审美的建议。。。

公众号后台回复,网易云,获取网易云音乐源码哟。

c 在realse下为什么生成不了exe_exe文件?你也可以编写!相关推荐

  1. MDK/Kile软件生成不了hex文件

    一般情况下,生成不了hex文件都是电脑系统某些因素导致,三个解决办法. 第一,卸载MDK从新安装,注意安装路径一定不要有中文路径,不然也可能会导致一定的问题,这种方法一般是首选方法,比较简单,但是有些 ...

  2. linux驱动程序文件,急,linux驱动程序是对的为什么生成不了.o驱动程序文件

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 在.c文件和makefile文件都正确的情况下,为什么键入make命令之后却生成不了.o文件,还出现下面的东西 /usr/local/arm/2.95.3 ...

  3. linux 生成o 文件,急,linux为什么生成不了.o驱动程序文件

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 在文件和文件都正确的情况下,为什么键入命令之后却生成不了文件,还出现下面的东西 /usr/local/arm/2.95.3/bin/arm-linux-g ...

  4. mysql创建generator字段_springmvc+mybatsi-generator生成不了字段注释的解决方案

    在我早期搭建我的个人博客的时候,由于当时比较空闲,所以就没有使用mybatis-generator框架来生成mybatis文件,都还是自己一个个的亲手写,这次重构的时候,就想着将它框架集成进去,但也不 ...

  5. ef ddl生成不了脚本_如何使用Hibernate从Play生成DDL脚本! 框架项目

    ef ddl生成不了脚本 好的,因此您一直在使用hibernate属性名称=" hibernate.hbm2ddl.auto " value =" 更新 "来不 ...

  6. windows下javadoc生成文档注释的命令

    windows下javadoc生成文档注释的命令 javadoc -d myHello -author -version HelloWorld.java

  7. 用商城维护类项目,讲下应届生如何在面试中介绍项目,如何准备面试

    本人之前写的面试系列文,一直是针对技术和面试技巧,所以在本文里,就将结合具体的商城维护项目,给出介绍项目经验的做法. 1 面试前的准备要点 1 运行通本项目,尤其地,了解用JPA访问数据库,以及用Eu ...

  8. 从windows上传到linux服务器的php图片生成不了,windows10上用thinkphp5开发程序上传服务器后出现图片异常的问题...

    1.发现问题.经过测试,发现在windows10上浏览一切正常,上传图片浏览正常,但是上传到linux服务器后出现上传图片浏览失败的情况. 2.图片名称如果全部是英文,不包含中文等特殊字符,则在lin ...

  9. vb.net下,生成icon图标文件,图像格式为bmp,可用作windows应用的桌面快捷方式图标

    一.icon文件格式的简单介绍 windows的图标文件,其格式为ico. windows的.net编程,自带Icon函数,可以利用Icon.Save来保存icon文件,其中稍微要注意的就是,icon ...

最新文章

  1. 自监督3D手部姿态估计方法
  2. 十行Python代码搞定图片中的物体检测
  3. 如何基于asp.net core的Identity框架在mysql上作身份验证处理
  4. Bitbucket Cloud的新IP地址
  5. nginx php空白页 fastcgi_param
  6. 数据结构--图 Graph
  7. html画布360图案填充_在Photoshop中创建带有图案的抽象设计
  8. 100天搞定机器学习|Day4-6 逻辑回归
  9. 图片文字混排的垂直居中、inline-block块元素和行内元素混排的垂直居中问题
  10. JAVA游戏弑天剑传,弑天剑传(豪华版)_手机游戏资料库_新浪游戏_新浪网
  11. 透过顶级机构Q2持仓报告看美股不同板块的行情
  12. 小红书接口加密参数X-sign
  13. 淘宝百亿补贴的发展及日后玩法应对策略[淘宝子评价查询接口]
  14. Java8函数式编程、Stream流、Option的使用,一篇足够了
  15. ad 卡尔曼_理解卡尔曼五个方程
  16. win10 mysql 1030_Win10系统打开按键精灵提示#1030:启动脚本执行(图)
  17. python tcp黏包和struct模块解决方法,大文件传输方法及MD5校验
  18. SAP销售发票中容易出现的科目确定过账问题的简要分析
  19. React Native小菜鸡的踩坑排雷记录(1)
  20. 浅谈算法和数据结构: 哈希表

热门文章

  1. 为什么华为在发布会不提鸿蒙,华为又要开发布会?这次没有手机,鸿蒙系统要当主角!...
  2. 模拟电路基础秦世才_模拟电子技术基础碎片化-晶体管及放大电路基础
  3. linux服务器性能监控命令汇总之iostat命令(三)
  4. mysql创建用户并授登录权限_mysql创建用户并授予权限
  5. 一文简单弄懂tensorflow_【TensorFlow】一文弄懂CNN中的padding参数
  6. springboot读取linux文件_SpringBoot读取Resource下文件的几种方式
  7. 测试用例设计方法_测试用例设计方法——流程分析法(场景法)
  8. java 方法特点是什么_Java String 的特点是什么?它有哪些重要的方法?
  9. 频率分布直方图组距如何确定_吃透教材理解教参,《直方图》教学反思
  10. python【力扣LeetCode算法题库】1160-拼写单词