📜  在Python中使用CX_Freeze

📅  最后修改于: 2020-05-12 05:06:51             🧑  作者: Mango

我们已经用Python创建了许多有趣的项目和程序,有时可能会创建一些非常令人兴奋的东西,并且我们想共享它。 通常,为了共享我们的Python程序,收件人将需要安装相同版本的Python,以及所有使用的模块。 嗯,这可能非常繁琐。 对于分发,转换为.exe的兴趣很高,并且有两种选择。 在Python 2.7中, Py2exe是一个不错的选择,而对于Python 3,cx_freeze可以很好地工作。

CX_Freeze | .py到.exe

cx_Freeze是一组脚本和模块,用于将Python脚本冻结为可执行文件,方式与py2exe和py2app相同。 与这两个工具不同,cx_Freeze是跨平台的,可在Python可以使用的任何平台上运行。 它支持Python 2.7或更高版本(包括Python 3)。
我们首先需要获取cx_Freeze:从此处下载或使用pip安装它:

有了cx_freeze之后,就可以开始了。 我们将使用正则表达式和urllib解析“ imangodoc.com”。

 import urllib.request
  import urllib.parse
  import
  import time
  url = ' https://www.imangodoc.com/ '
  values = { 's' : 'basics' ,
            'submit' : 'search' }
  data = urllib.parse.urlencode(values)
  data = data.encode( 'utf-8' ) # 数据应为字节
  req = urllib.request.Request(url, data)
  resp = urllib.request.urlopen(req)
  respData = resp.read()
  paragraphs = re.findall(r '

(.*?)

' , str (respData)) for eachParagraph in for eachParagraph paragraphs: print (eachParagraph) time.sleep( 14 )

输出:我们在最后添加了14秒的睡眠,以便我们可以运行可执行文件并在关闭之前查看输出。因此,我们将该文件另存为“ reandurllib.py”。

现在,我们创建另一个文件“ setup.py”

  from cx_Freeze import setup, Executable
  setup(name = "mangodoc" ,
        version = "0.1" ,
        description = "" ,
        executables = [Executable( "reandurllib.py" )])

这里是从cx_Freeze安装程序和可执行文件导入的,然后我们调用安装程序函数,添加4个参数。

  1. name:这是我们希望我们的可执行文件成为的名称
  2. 版本:只是给出的版本号,
  3. 描述:我们要提供的所有详细信息(可选)
  4. 可执行文件最后,我们将使用可执行函数和要转换的Python脚本路径作为参数来转换。

接下来,我们打开cmd.exe或bash或我们拥有的任何shell,导航到具有setup.py和要转换的脚本的目录,然后运行:

Python setup.py build

现在,我们得到一个构建目录。 在其中,我们找到另一个目录,在其中,我们找到可执行文件! 如果一切顺利,它应该从“imangodoc.com”解析basic的搜索结果,并在关闭前显示文本结果15秒钟。请检查如何找到可执行文件。

有些事情相对没有那么简单。 转换诸如Pygame和Matplotlib之类的东西非常困难,需要逐案解决。