工具| 将你如何打包py文件脱机运行

点击上方蓝色字关注 [ 啃饼思录 ]~

我回来了,说好的回来。。。

上次给大家透露了本期文章是爬取抖音小视频,因为我们没有介绍过如何爬取app,因此依旧是爬取网站。抖音有一个国际版,其网址是https://www.tiktok.com/,但是在国内访问不了,你需要翻墙。很不幸这篇文章写到一半的时候,我的梯子挂掉了,所以这篇文章就先搁浅了。等后面有空就出几篇基于app的爬虫文章,今天我们的主题是如何将py文件打包成exe格式,以便于在Windows系统上脱机运行。好了话不多说,走你。

1

首先我们需要下载pyinstaller这个工具,链接在这里:http://www.pyinstaller.org/downloads.html,进入到下载页面:

当然如果你觉得下载太麻烦,你可以直接使用

pip install pyinstaller

这个命令直接下载,然后执行

pip install --upgrade pyinstaller

检查一下是不是最新的版本。当然官方也提供了一个直接安装的方法:

pip install https://github.com/pyinstaller/pyinstaller/archive/develop.tar.gz

不出意外的话,它会顺便安装下面的依赖:

altgraph-0.16.1 macholib-1.11 pefile-2018.8.8 pyinstaller-3.4 pywin32-ctypes-0.2.0

需要说明的是pyinstaller目前最高只支持Python3.4的版本,其他高版本暂不支持。

接下来就是重点,如何将py文件打包为exe可执行文件?往下看,很简单,两步就能解决!第一步,先准备一个helloWorld.py文件,第二步使用

pyinstaller -F helloWorld.py

就能在当前生成的dist文件夹下面,发现一个helloWorld.exe的可执行文件了。(生成路径中不要包含中文,否则就会出现问题)

现在介绍一下pyinstaller后面添加参数的含义:

-F 表示生成单个可执行文件

-w 表示去掉控制台窗口,这在GUI界面时非常有用。不过如果是命令行程序的话那就把这个选项删除吧!

-p 表示你自己自定义需要加载的类路径,一般情况下用不到

-i 表示可执行文件的图标

了解了上面的参数以后,我们来尝试修改一下生成文件的图标,你只需要在输入的命令中添加一个-i tubiao.ico(图标的相对路径)即可:

你只需要在终端中输入:

pyinstaller -F -i dog.ico helloWorld.py

就可以在dist文件夹下面,发现一个helloWorld.exe的可执行文件了。

最后附上我helloWorld.py里面的猜数字游戏代码,你们可以尝试打包完去玩一玩这个小游戏吧:

 1#!/usr/bin/python 
 2# -*- coding:utf-8 -*-  
 3# @Time: 2019/4/6 10:26   
 4# @Author: Envy   
 5# @File: helloWorld.py
 6
 7
 8import random
 9print("########  猜数字小游戏(100以内)   #########")
10print("#  1.开始游戏  2.任意键退出游戏  #")
11print("#    注:猜错三次游戏自动退出.   #")
12print("##################################")
13put = input("请输入:")
14if put == "1":
15    number = 3
16    secret = random.randint(1, 100)
17    while number > 0:
18        temp = input("不妨猜一猜我现在心里想的数字是几:")
19        temp2 = temp.strip()
20        if temp2.isdigit():
21            temp1 = int(temp2)
22            if temp1 ==secret:
23                exit("哼,我心里想的数是%s,居然被你猜中了,不过猜中也没有奖励^_^ 游戏结束啦!"%secret)
24            elif number == 1:
25                exit("一丢丢笨了,三次机会都没有猜到!不妨告诉你吧,我心里想的数字是:%s" % (secret))
26            elif temp1 > secret:
27                print("我心想的数字比%s小,还剩%s次机会啦"%(temp1,number-1))
28            else:
29                print("我心想的数字比%s大,还剩%s次机会啦"%(temp1,number-1))
30        else:
31            print("Error:'%s'不是一个数字,请输入一个整数" % temp)
32            number += 1
33        number -= 1
34
35
36else:
37    exit("退出游戏成功!")

苹果电脑的用户是不是觉得很无奈?哈哈哈,没有的事,接下来就教你如何打包为dmg格式文件。继续往下看!

这里苹果用户使用的是py2app这个工具,不过需要说明的是这个工具打包后的dmg格式,只能在你电脑上运行,这个和使用pyinstaller打包的完全不一样,pyinstaller打包的软件可以在任意一台Windows电脑上运行。

第一步:进行安装py2app(注意使用pip3源)

pip3 install py2app

第二步:查找 py2app 中 py2applet 的地址

sudo find / -name "py2applet" -type f

第三步:创建 setup 文件

"py2applet 地址" --make-setup "python文件地址"

第四步:发布应用

rm -rf build dist

python3 setup.py py2app -A

这个过程相对来说是比较复杂的,但是也是很好理解,所以我就不一一演示了。

前面说了Windows和MacOs,那么Linux系统呢?你可以使用cx_Freeze,这个和前面的使用方法差不多,我就不一一介绍了。

好了,今天的分享就到这里了,如果你觉得不错,请分享一下吧。

原文发布于微信公众号 - 啃饼思录(kbthinking)

原文发表时间:2019-04-06

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

扫码关注云+社区

领取腾讯云代金券