Using CX_Freeze in Python
Last Updated :
24 May, 2024
We have created many interesting projects and programs in Python.There may come a time when we've created something very exciting, and we want to share it. Usually, in order to share our Python program, the recipient is going to need to have the same version of Python installed, along with all of the modules used. Well this can be quite tedious to require. The interest in converting to .exe is fairly high for distribution, and there are a couple of options. With Python 2.7,
Py2exe is a great choice & for Python 3, cx_freeze works quite nicely.
CX_Freeze | .py to .exe
cx_Freeze is a set of scripts and modules for freezing Python scripts into executables, in much the same way that
py2exe and
py2app do. Unlike these two tools, cx_Freeze is cross-platform and should work on any platform that Python itself works on. It supports Python 2.7 or higher (including Python 3).
We'll first need to get cx_Freeze: download from
here or install it using pip:

Once we have cx_freeze, we're ready to get started. We will parse 'geeksforgeeks.org' with regex and urllib.
Python
import urllib.request
import urllib.parse
import re
import time
url = 'https://www.geeksforgeeks.org/'
values = {'s' : 'basics',
'submit' : 'search'}
data = urllib.parse.urlencode(values)
data = data.encode('utf-8') # data should be bytes
req = urllib.request.Request(url, data)
resp = urllib.request.urlopen(req)
respData = resp.read()
paragraphs = re.findall(r'<p>(.*?)</p>',str(respData))
for eachParagraph in paragraphs:
print(eachParagraph)
time.sleep(14)
Output: We've added a 14 second sleep at the end, so that we can run the executable and see the output before it closes.So, let's save this file as "reandurllib.py."

Now, we create a second file called "setup.py"
Python
from cx_Freeze import setup, Executable
setup(name = "GeeksforGeeks" ,
version = "0.1" ,
description = "" ,
executables = [Executable("reandurllib.py")])
So, here we're importing from cx_Freeze setup and executable, then we call the setup function, adding 4 parameters.
- name : this is the name we want our executable to be
- Version : is just a version number to give it,
- description : All the details we want to give(optional)
- executableThese are finally what shall we convert, using the executable function and the python script's path to be converted as the parameter.
Next, we open up cmd.exe, or bash, or whatever shell we have, navigate to the directory that has the setup.py and the script to be converted, and we run:
python setup.py build
Now we're given a build directory. Within it, we find another directory, and within THAT, we find our executable! If everything went right, it should parse the search result of basic from
geeksforgeeks.org, and display the text results for 15 seconds before closing.Check, how to find the executable:
Some things wont be so simple. Converting things like Pygame and Matplotlib are very difficult and are solved in a case-by-case basis.
Reference:
Similar Reads
Python Tutorial - Learn Python Programming Language Python is one of the most popular programming languages. Itâs simple to use, packed with features and supported by a wide range of libraries and frameworks. Its clean syntax makes it beginner-friendly. It'sA high-level language, used in web development, data science, automation, AI and more.Known fo
10 min read
Python Interview Questions and Answers Python is the most used language in top companies such as Intel, IBM, NASA, Pixar, Netflix, Facebook, JP Morgan Chase, Spotify and many more because of its simplicity and powerful libraries. To crack their Online Assessment and Interview Rounds as a Python developer, we need to master important Pyth
15+ min read
Python OOPs Concepts Object Oriented Programming is a fundamental concept in Python, empowering developers to build modular, maintainable, and scalable applications. By understanding the core OOP principles (classes, objects, inheritance, encapsulation, polymorphism, and abstraction), programmers can leverage the full p
11 min read
Python Projects - Beginner to Advanced Python is one of the most popular programming languages due to its simplicity, versatility, and supportive community. Whether youâre a beginner eager to learn the basics or an experienced programmer looking to challenge your skills, there are countless Python projects to help you grow.Hereâs a list
10 min read
Python Exercise with Practice Questions and Solutions Python Exercise for Beginner: Practice makes perfect in everything, and this is especially true when learning Python. If you're a beginner, regularly practicing Python exercises will build your confidence and sharpen your skills. To help you improve, try these Python exercises with solutions to test
9 min read
Python Programs Practice with Python program examples is always a good choice to scale up your logical understanding and programming skills and this article will provide you with the best sets of Python code examples.The below Python section contains a wide collection of Python programming examples. These Python co
11 min read
Python Introduction Python was created by Guido van Rossum in 1991 and further developed by the Python Software Foundation. It was designed with focus on code readability and its syntax allows us to express concepts in fewer lines of code.Key Features of PythonPythonâs simple and readable syntax makes it beginner-frien
3 min read
Python Data Types Python Data types are the classification or categorization of data items. It represents the kind of value that tells what operations can be performed on a particular data. Since everything is an object in Python programming, Python data types are classes and variables are instances (objects) of thes
9 min read
Input and Output in Python Understanding input and output operations is fundamental to Python programming. With the print() function, we can display output in various formats, while the input() function enables interaction with users by gathering input during program execution. Taking input in PythonPython input() function is
8 min read
Enumerate() in Python enumerate() function adds a counter to each item in a list or other iterable. It turns the iterable into something we can loop through, where each item comes with its number (starting from 0 by default). We can also turn it into a list of (number, item) pairs using list().Let's look at a simple exam
3 min read