zoukankan      html  css  js  c++  java
  • 打包python文件为exe文件(PyInstaller工具使用方法)

            最近做的新浪微博爬虫程序,打算打包成.exe软件以方便使用,网上找到一个很好的打包工具pyinstaller,这里记录一下打包的方法。


    一、下载pyinstaller

    我使用的版本为PyInstaller-2.1,支持python版本2.3-2.7,点击这里下载


    二、安装pyinstaller

    下载完成后,解压即可。我的解压目录为D:Python27PyInstaller-2.1


    三、使用pyinstaller打包.py成.exe应用程序

    1.注意使用前要安装pywin32,点击这里下载

    2.将需要打包的.py放到PyInstaller-2.1目录下,如下图所示。



    在命令行,cd进入可执行python命令的目录,执行命令:python pyinstaller.py [opts] yourprogram.py

    主要选项包括:

    -F, –onefile 打包成一个exe文件。

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

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

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

    更详细的使用方法可以参考下载包里的doc目录下的Manual.html文件。

    具体操作:

    python pyinstaller.py-F sina_crawler.py

    实际操作:(其实就是注意文件路径,我的pyinstaller安装目录D:Python27pyinstaller-2.1

    cdd:Python27目录下,然后命令:

    python pyinstaller-2.1pyinstaller.py -F pyinstaller-2.1sina_crawler.py

    如果最后出现Appending archive to EXE,则生成成功。



    注意会生成(均在Python27目录下):

    1. dist文件夹(包含生成好的sina_crawler.exe

    2.build文件夹(中间生成,没用,事后可以删掉)

    3.sina_crawler.spec文件(中间生成,没用,事后可以删掉)

    四、生成的微博爬虫软件

    双击生成的dist文件夹里的sina-crawler.exe文件,运行软件开始爬取微博。



    顺便说句题外话,对于控制台程序运行,无论是.py文件还是生成的.exe文件,程序运行完闪退的情况:可以在程序加上raw_input()函数,表示运行结束等待回车输入再退出。


    爬下来的页面:



  • 相关阅读:
    HDU 1285 确定比赛名次(拓扑排序模板)
    POJ 1679 The Unique MST(次小生成树)
    POJ 3026 Borg Maze(Prim+bfs求各点间距离)
    POJ 2349 Arctic Network(最小生成树+求第k大边)
    POJ 3169 Layout (spfa+差分约束)
    给定两个list A ,B,请用找出 A ,B中相同的元素,A ,B中不同的元素 ??
    什么是http协议??
    Python2中range 和xrange的区别??
    死锁 ??
    调度算法 ??
  • 原文地址:https://www.cnblogs.com/DianaCody/p/5425642.html
Copyright © 2011-2022 走看看