我正在从旧的Win2K机器迁移到新的功能更强大的Vista 64位PC。大多数迁移都相当顺利 - 但我发现我需要重新安装所有与Python相关的工具。
我已下载mechanize-0.1.11.tar.gz文件并运行easy_install进行安装。这产生了C:\ Python25 \ Lib \ site-packages \ mechanize-0.1.11-py2.5.egg。
然后我运行了一个python脚本来测试它,它在解释器下工作正常。但是,当我运行py2exe来编译脚本时,我收到一条无法找到机械化的消息。
然后我将鸡蛋移动到一个新的文件夹,使用easy_install进行安装 - 并得到它确实安装的所有迹象。
但是,在尝试使用py2exe时仍然会收到相同的消息 - 机械化不存在!
我搜索了整个磁盘的“机械化”,结果只获得了2个egg文件。安装应该生成哪些文件 - 我应该在哪里找到它们?
显然,我在这里遗漏了什么...有什么建议吗?
另外,也许相关,我正在运行的python是32位2.5.4版本......这就是我以前的想法,并希望在安装64位版本之前让一切正常工作 - 加上,我不是看到一些似乎支持64位版本的工具(easy_install& py2exe)。这是问题的一部分,我是否需要安装&运行64位版本 - 对于那些在运行我的脚本时运行32位PC的人来说,这会有问题吗?
答案 0 :(得分:2)
如果源格式为egg格式,则有note on the py2exe site不起作用:
py2exe目前没有(截至 0.6.5)如果程序的某些依赖项存在,则开箱即用 .egg表格。
如果您的程序本身不使用 setuptools设施(例如, pkg_resources),然后你需要的一切 确保依赖关系 解压缩后安装在您的系统上 形式,而不是拉链.egg。
实现此目的的一种方法是使用 - easy_install的always-unzip选项。
您正在运行哪个版本? pypi.python.org上列出的最新版本是0.6.9版本,但没有迹象表明如果此版本中的鸡蛋问题得到解决,我可以找到。
答案 1 :(得分:0)
正如其他用户建议的那样......我在此总结了使Mechanize和BeautifulSoup与py2exe一起工作所需的步骤。
将.py文件转换为Windows .exe
按照此处的说明操作:py2exe Tutorial
第1步
从这里下载py2exe ... http://sourceforge.net/projects/py2exe/files/ (我使用的是Python 2.7)
我为Python 2.7安装了0.6.9
py2exe-0.6.9.win32-py2.7.exe(201KB)
安装
第2步
尝试一个hello world文件..以确保所有工作..如
中所示http://www.py2exe.org/index.cgi/Tutorial
有关模块的任何问题(请参阅此文件夹:C:\ Python27 \ Lib \ site-packages),请参阅下面的问题
第3步
在dist目录中测试可执行文件..
总之,当您遇到模块问题时,请确保访问站点包目录..并查看是否存在完整包而不仅仅是.egg文件。 py2exe不能只使用.egg文件(一个外行的理解)。
<强>的问题:强>
py2exe找不到机械化模块..这是因为我在本地机器上首次安装机械工只是一个.egg文件(mechanize-0.2.5-py2.7.egg.OLD 324KB)..我需要像这样安装完整的机械:
easy_install --always-unzip <library_name>
我做到了..然后这次机械化安装在名为mechanize-0.2.5-py2.7.egg(1.1MB)的文件夹中。
另外beautifulsoup-3.2.0-py2.7.egg最初的.egg文件是69KB ...并且用
安装后easy_install -–always-unzip BeautifulSoup
它安装在名为beautifulsoup-3.2.0-py2.7.egg(229KB)的文件夹中。
此处有一些说明:http://www.daniweb.com/software-development/python/threads/204941