This article is for those with basic Python programming skills, looking to build simple Windows executable programs using Pywin32 and Pyinstaller. It doesnt provide solutions for building complex software programs, though.
There are a few prerequisites to creating your exe file, which are mentioned below:
- Windows OS
- Python 2.7.x
- Pywin32
- Pyinstaller
Python 2.7.x can be downloaded from www.python.org. You can get Pywin32 from http://sourceforge.net/projects/pywin32/files/pywin32/. Pyinstaller can be downloaded from https://pypi.python.org/pypi/PyInstaller.
In this article, we will try to cover the basics of creating a Windows executable with the help of Pywin32 and Pyinstaller. While installing Python, please select the option to add it into the class path variable of the system. After installing Python, open the command prompt window and type the following command:
pip install pyinstaller
Pywin32 is an executable file and can be installed easily.
After completing the installations, lets write a simple Python program file which will help to locate any file in the whole system, including external devices such as a pen drive. This Python file is built as an executable and placed in the Windows folder. The command locate is run with a combination of search strings such as the name of the file.
Given below is the code for the Locate program in Python:
Locate.py import os import re import sys from datetime import datetime response = os.popen(wmic logicaldisk get caption) list1 = [] for line in response.readlines(): line = line.strip(\n) # this line strip the \n line = line.strip(\r) # this line strip the \r means carriage return line = line.strip( ) # use to strip blank space if (line == Caption or line == ): # if caption and appears this line ignore continue list1.append(line) # list1 now contain all drives of windows a = \\ def search1(list1): tf = 0 td = 0 for each in list1: # take each drive one by one print In , each for root, dir, files in os.walk(each, topdown = True): # this line return the root dir (means start from drive), sub driectory and files in the root dir for file in files: # start search from files if re.search(sys.argv[1].lower(), file.lower()): # this line match the substring given in command line argument with files one by one print root+a+file # if match found then make a path to print tf = tf+1 # to count the files for d in dir: if re.search(sys.argv[1].lower(), d.lower()): # this line for directories print root+a+d #print the path td = td+1 # print the number of dirs matched print Total File(s) are , tf print Total Directores are , td print \nThank you for using l4wisdom.com\n t1= datetime.now() search1(list1) # call the function. t2= datetime.now() total =t2-t1 # to calculate the total time taken in process print Searchingcompleted in , total
Place the locate.py file in the Pyinstaller folder and open the command prompt. Go to the Pyinstaller folder and then execute the following command:
C:\PyInstall-2.1>Python pyinstaller.py --onefile locate.py
After running the command, you will get an output as shown in Figure 1.
Place the locate.exe file in the Windows folder of the system. This will make the system automatically pick the file through the Windows path variable. Now, go to the run command and provide the command locate, along with the file name you are looking for. If you dont remember the file name, then this command also takes the search query, as shown in Figure 2.
Ensure that indentation is maintained; else the source code is of no use.
This shows how to convert a single python file into an executable one.
But i have to convert my whole application that includes set of python files.
Any help on that?