• 博客园logo
  • 会员
  • 周边
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
九五二七乌托邦
博客园    首页    新随笔    联系   管理    订阅  订阅

python小程序打包

 

1.首先先要安装

pip install pywin32

pip install pyinstaller

 没有越狱安装不了加个国内镜像地址: pip install pyinstaller -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com    亲测有效用的时候也不用导入,cmd界面直接调用就Ok了

2.验证一波  baidu.py

from selenium import webdriver
from time import sleep
driver = webdriver.Chrome()
driver.get('https://www.baidu.com/')
driver.find_element_by_id('kw').send_keys('哈哈')
driver.find_element_by_id('su').click()
sleep(5)
driver.close()

代码就是打开百度,输入 ‘’哈哈‘’ 点击百度,等待5s 关闭界面

3.开始打包

打开cmd界面,cd到py文件目录下,直接上代码 pyinstaller -F -w baidu.py  回车

稍等片刻,py文件会出现一个新的dist文件夹,打开之后发现exe执行文件

双击

 

解释一波:

pyinstaller -F -w baidu.py   

-F:生成一个执行文件,不加会显示出全部的依赖dll等文件,-w是影藏黑框如cmd一样。(但是要改一下文件的参数)

 

若想换执行文件的图标,下载ico格式图片,

图标下载地址:https://www.easyicon.net/iconsearch/IOC%E5%9B%BE%E6%A0%87/?s=addtime_DESC

 

 执行代码的时候就变成了 pyinstaller -F -w -i 图片path py文件path 回车之后就发现

4.别的电脑能执行我的程序吗?当然是没有问题的,不过要有一个驱动插件来解决。假如你用的是谷歌浏览器。那么别的电脑也要有谷歌浏览器。还有要把谷歌驱动插件chromedriver.exe给别的电脑,放在和执行程序一个目录下面就可以实现了。

至于能不能打包时一起打包,还有脚本执行的一些参数文件,我还没有解决。我是小白,还在努力。

纯属小白笔记,大神绕道

 

5.发现写了oracle的相关之后,打包就不能使用,后面查询资料才知道要写入oracle的配置文件才行

pyinstaller看起来并不会将动态链接库自动打包,所以我们需要告诉pyinstaller要打包哪些动态链接库,步骤如下(假设python文件名为 oracletest.py):

使用pyinstaller -F -w oracletest.py 打包后会生成一个oracletest.spec文件,我们要修改这个spec文件。

将 a.binaries, 改为

a.binaries+[('oraociei12.dll','D:\\Python\\Lib\\site-packages\\oraociei12.dll','BINARY'),('oci.dll','D:\\Python\\Lib\\site-packages\\oci.dll','BINARY'),('oraons.dll','D:\\Python\\Lib\\site-packages\\oraons.dll','BINARY')],

以上路径需要参照oracle instantclient 的存放目录进行修改。我是放到了D:\\Python\\Lib\\site-packages目录下。

依照spec文件打包,执行命令如下:

pyinstaller -F -w oracletest.spec
然后就可以了

 

posted @ 2019-04-28 10:22  九五二七乌托邦  阅读(1069)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3