查看原文
其他

exe文件?你也可以编写!

咪咪怪 咪哥杂谈 2019-10-31
咪哥杂谈

本篇阅读时间约为 7 分钟。


1

前言


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


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


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


2

环境准备


开始之前,先来准备一下环境,首先呢,要安装这个库。这里就用到了前几天介绍的,pipenv。回顾文章:你应该了解的python虚拟环境与依赖管理


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


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


3

视频演示


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



4

一些要注意的点


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


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


- 不要随意更改png、jpg格式图片,直接修改为ico的格式图片,因为这样并不管用,会报一些很奇葩的错误 


-这里我给出对应的网址,你可以先从这个网址找图片:https://www.easyicon.net/


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


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

笔者的csdn博客,https://blog.csdn.net/s740556472/article/details/78449612


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


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

5

总结


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


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


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


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


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


至此完!




▼往期精彩回顾▼网易云音乐源码分享新手必会,python中的debug调试还在用网易云音乐客户端?out了~


长按关注

公众号名称:咪哥杂谈

一个咪咪怪的公众号

长按二维码关注哦!


你点的每个在看,我都认真当成了喜欢

    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存