将arcpy编写的程序打包成exe

使用py2exe将第三方库arcpy打包成独立运行的exe(成功运行)

一、注意事项
(1)设置电脑的python环境变量;
(2)编写的python脚本必须正常运行(由于使用的python为2.7,因此路径、文件、变量中最好不要出现 汉语)同时利用cmd能正常执行该脚本;
(3)运行电脑安装打包工具py2exe;
(4)打包的exe以管理员运行;

二、例子(合并mdb数据库)

  • (1)程序脚本:
# coding=utf-8
import sys
# 非常关键,程序运行成不成功基本上靠它。不同的电脑安装不同自行修改,修改之后再次打包
arcpy_path = [r'C:\SoftWare\ArcGis\ArcGIS10.1\Lib',
              r'C:\SoftWare\ArcGis\ArcGIS10.1\Lib\site-packages',
              r'C:\SoftWare\ArcGis\Desktop10.1\arcpy',
              r'C:\SoftWare\ArcGis\Desktop10.1\bin',
              r'C:\SoftWare\ArcGis\Desktop10.1\ArcToolbox\Scripts']
sys.path.extend(arcpy_path)
import arcpy
import string
import site
from site import addsitedir
from sys import executable
from os import path
interpreter = executable
sitepkg = path.dirname(interpreter) + "\\site-packages"
print(sitepkg)
site.addsitedir(sitepkg)

try:
    workspace = r'C:\Users\Administrator\Desktop\y\33'  #sys.argv[1]
    outdb1 = r"C:\Users\Administrator\Desktop\y\ee\1.mdb" #sys.argv[2]
    arcpy.env.workspace = workspace
    files = arcpy.ListFiles("*.*db")
    arcpy.env.workspace = outdb1
    fcs = arcpy.ListFeatureClasses()
    fcs = fcs + arcpy.ListTables()
    dss = arcpy.ListDatasets()
    for File in files:
        print File
        for fc in fcs:
            arcpy.Append_management(workspace + "\\" + File + "\\" + fc, outdb1 + "\\" + fc)
        for ds in dss:
            fcs1 = arcpy.ListFeatureClasses(feature_dataset=ds)
            for fc1 in fcs1:
                print fc1
                arcpy.Append_management(workspace + "\\" + File + "\\" + ds + "\\" + fc1, outdb1 + "\\" + ds + "\\"+fc1)
except arcpy.ExecuteError:
    print arcpy.GetMessages()
  • (2)打包脚本:
# coding=utf-8
from distutils.core import setup
import py2exe
options = {"py2exe": {"excludes": ["arcpy"]}}
setup(console=['pythonGUI.py'], options=options)#console是控制台,windows是窗体
  • (3)打包命令:
    管理员运行cmd,进入打包脚本的目录(如 cd C:\Users\Administrator\Desktop\ww );
    运行命令python setup.py py2exe等待打包结束,生成build、dist两个文件夹;
    在dist文件夹下创建site-packages文件夹,拷贝arcpy安装包下的Desktop10.1.pth文件(如:…\Lib\site-packages下)到dist\site-packages文件夹中,并用记事本打开当前dist\site-packages\Desktop10.1.pth在末行添加python脚本的位置(如:C:\SoftWare\ArcGis\ArcGIS10.1\Lib和C:\SoftWare\ArcGis\ArcGIS10.1\Lib\site-packages保存即可)。
  • (4) 管理员运行exe。
  • (5)运行源代码及安装环境包加QQ:1815222521咨询。
  • 3
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

梅里雪山GIS

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值