首先要注意一下:打包python文件成exe格式这个过程只能在windows环境下运行

1. 直接在命令行用pip安装 pyinstaller

pip install pyinstaller</p>

2. 下载安装pyinstaler运行时所需要的windows拓展—pywin32

pywin32:http://sourceforge.net/projects/pywin32/files/pywin32/

点击最新的Build再点击pywin32-219.win-amd64-py2.7.exe(这里要根据你的windows x86或者x64和你的python版本来选择)

3.在命令行中切换到要打包的程序所在目录,直接输入下面的指令即可

pyinstaller -F demo.py

参数
含义

-F
指定打包后只生成一个exe格式的文件

-D
–onedir 创建一个目录,包含exe文件,但会依赖很多文件(默认选项)

-c
–console, –nowindowed 使用控制台,无界面(默认)

-w
–windowed, –noconsole 使用窗口,无控制台

-p
添加搜索路径,让其找到对应的库。

-i
改变生成程序的icon图标

注意事项:

生成文件中,可能包含一个以warn开头的类似warndemo.txt的警告文件这很明显,是因为程序无法自动导入很多的库使用-p参数添加搜索路径

 pyinstaller.py -F -p C:\python27; ..\demo.py  #注意当前目录是我在下一级目录里

2.添加icon图标

pyinstaller.py -F -p C:\python27; -i ..\a.ico ..\demo.py

对了,这里有个网址可以参考一下

后话:

我按照自己写的步骤在自己电脑上试了一下是可以的,但是将exe拷贝到别人电脑上用了一下,发现出了一个这样的错误

F:\qq文件\a>AutoRecord.exe
Traceback (most recent call last):
File "<string>", line 21, in <module>
File "C:\Python27\Lib\site-packages\PyInstaller\loader\pyi_importers.py", line
507, in install
File "C:\Python27\Lib\site-packages\PyInstaller\loader\pyi_importers.py", line
156, in __init__
ImportError: Can't load frozen modules.

这个问题是因为他的运行目录里面包含了中文,要处理中文要从github上面安装最新的pyinstaller

git clone https://github.com/dkw72n/pyinstaller.git
python setup.py install

然后重新打包.py文件再次发给对方就可以解决这个问题了

解决一些问题可以查看这个网址使用PyInstaller打包Python程序

运行的结果如下:

import urllib.request
import urllib.parse
import os
import json content=input("请输入需要翻译的内容:")
url='http://fanyi.youdao.com/translate?smartresult=dict&smartresult=rule&smartresult=ugc&sessionFrom=http://www.youdao.com/'
data={} data['type']='AUTO'
data['i']=content
data['doctype']='json'
data['xmlVersion']='1.8'
data['keyfrom:fanyi']='web'
data['ue']='UTF-8'
data['action']='FY_BY_CLICKBUTTON'
data['typoResult']='true'
data=urllib.parse.urlencode (data).encode('utf-8') response = urllib.request.urlopen(url,data)
html=response.read().decode('utf-8') target=json.loads(html)
print("翻译结果为:%s"%(target['translateResult'][0][0]['tgt']))
#input ('按任意键退出:')
os.system('pause')
#print(html)

这是一个利用python爬虫实现的翻译软件,利用有道词典的接口进行翻译,运行后,产生了一个translate.exe,可以在windows上未安装python的环境下运行。

完成

pyinstaller--将py文件转化成exe的更多相关文章

  1. pyinstaller将py文件转成exe格式

    首先要注意一下:打包python文件成exe格式这个过程只能在windows环境下运行 1. 直接在命令行用pip安装 pyinstaller pip install pyinstaller 2. 下 ...

  2. 【Python学习】使用Pyinstaller将py文件导出为exe文件

    PyInstaller其实就是把python解析器和你自己的脚本打包成一个可执行的文件,但是它不是跨编译的,也就是说在Windows下用PyInstaller生成的exe只能运行在Windows下,在 ...

  3. 将.py文件转化成.exe

    机子上已经安装好python,且配置好环境变量 编写好xx.py文件 安装pywin32.此处一定注意pywin32有32位和64位之分.可以在命令提示符里输入python来查看python的版本以及 ...

  4. python的py文件打包成exe

    一.首先需要安装Pyinstaller-- 使用pip来安装模块 (我电脑上装的是python的一个编译环境Anaconda,如果电脑上装的是python自带的IDE的话,就直接进入python的安装 ...

  5. 【Python】将python3.6软件的py文件打包成exe程序

    下载pyinstaller pyinstaller 改变图标 pyinstaller -F --icon=my.ico xxx.py 采用命令行操作的办法 在cmd命令行中,输入代码: 首先,前往Py ...

  6. 如何把py文件打包成exe可执行文件

    如何把py文件打包成exe可执行文件 1.安装 pip install pyinstaller 或者 pip install -i https://pypi.douban.com/simple pyi ...

  7. 如何将python3.6软件的py文件打包成exe程序

    在我们完成一个Python项目或一个程序时,希望将Python的py文件打包成在Windows系统下直接可以运行的exe程序.在浏览网上的资料来看,有利用pyinstaller和cx_Freeze进行 ...

  8. 将py文件打包为exe文件方法

    前提: pip是依赖python的,首先检查下windows机器上有没有安装python,或者有没有添加到环境变量中,如果都没有需要安装或者加入环境变量 安装pip 下载地址: https://pyp ...

  9. webService接口的py文件打包成exe

    (一)webService接口的py文件打包成exe,在python3.5版本.pyInstaller3.2版本.pywin32-219.win-amd64-py3.5版本打包时报错,原因可能是pyi ...

  10. 小白学习Python之路---py文件转换成exe可执行文件

    一.背景 今天闲着无事,写了一个小小的Python脚本程序,然后给同学炫耀的时候,发现每次都得拉着其他人过来看着自己的电脑屏幕,感觉不是很爽,然后我想着网上肯定有关于Python脚本转换成可执行文件的 ...

随机推荐

  1. py替换掉换行符

    for line in file.readlines(): line=line.strip('\n')

  2. ACM 马拦过河卒(动态规划)

    解题思路: 用一个二维数组a[i][j]标记 马的位置和马的跳点(统称控制点)该位置=1: 再用一个二维数组f[i][j]表示行进的位置,如果前一行的当前列不是马的控制点,或者前一列的当前行不是马的控 ...

  3. 去除DedeCms 5.7后台版权广告链接的方法

    织梦DedeCms 5.7后台有很多的织梦官方的广告链接,下面我们来将这些广告去掉吧. 一.去处后台登陆页login.php广告链. 1.找到登录界面模板文件/dede/templets/login. ...

  4. mysql join详解

    下面是例子分析 表A记录如下: aID aNum 1 a20050111 2 a20050112 3 a20050113 4 a20050114 5 a20050115 表B记录如下: bID bNa ...

  5. rwsr-sr-x类似权限设置

    如何设置suid/guid? 如果希望设置suid,那么就将相应的权限位之前的那一位设置为4:如果希望设置guid,那么就将相应的权限位之前的那一位设置为2:如果希望两者都置位,那么将相应的权限位之前 ...

  6. C#设计模式-1、适配器模式(Adapter Pattern)(转载)

    概述 在软件系统中,由于应用环境的变化,常常需要将“一些现存的对象”放在新的环境中应用,但是新环境要求的接口是这些现存对象所不满足的.那么如何应对这种“迁移的变化”?如何既能利用现有对象的良好实现,同 ...

  7. iOS开发摇动手势实现详解

    1.当设备摇动时,系统会算出加速计的值,并告知是否发生了摇动手势.系统只会运动开始和结束时通知你,并不会在运动发生的整个过程中始终向你报告每一次运动.例如,你快速摇动设备三次,那只会收到一个摇动事件. ...

  8. (JS高手不用看了!我只是在碎碎念,因为我也不知道面什么)JavaScript的算术运算

    Math.pow(2,53)    //2的51次幂 Math.round(0.6)    //四舍五入 Math.cell(0.6)      //向上求整 Math.floor(0.6)    / ...

  9. 繁华模拟赛 David与阶乘

    #include<cstdio> #include<iostream> #include<algorithm> #include<cstring> #i ...

  10. 搭建DNS服务器

    导读 Linux下架设DNS服务器通常是使用Bind程序来实现的.Bind是一款实现DNS服务器的开放源码的软件.DNS即域名系统,主要功能是将人们易于记忆的Domain Name(域名)与不易记忆的 ...