Skip to main content

winapps - Python library for managing installed applications on Windows

License PyPI - Python Version PyPI

Installation

To install winapps from PyPI run:

$ pip install winapps

Or clone it using git:

$ git clone https://github.com/rominf/winapps.git
$ cd winapps
$ python(3) setup.py install

Usage

Printing installed applications

import winapps

for app in winapps.list_installed():
    print(app)
# InstalledApplication(name='7-Zip 19.00 (x64)', version='19.00', install_date=None, install_location=WindowsPath('C:/Program Files/7-Zip'), install_source=None, modify_path=None, publisher='Igor Pavlov', uninstall_string='C:\\Program Files\\7-Zip\\Uninstall.exe')
# InstalledApplication(name='Mozilla Firefox 66.0.2 (x64 ru)', version='66.0.2', install_date=None, install_location=WindowsPath('C:/Program Files/Mozilla Firefox'), install_source=None, modify_path=None, publisher='Mozilla', uninstall_string='"C:\\Program Files\\Mozilla Firefox\\uninstall\\helper.exe"')
# InstalledApplication(name='Mozilla Maintenance Service', version='66.0.2', install_date=None, install_location=None, install_source=None, modify_path=None, publisher='Mozilla', uninstall_string='"C:\\Program Files (x86)\\Mozilla Maintenance Service\\uninstall.exe"')
# InstalledApplication(name='Oracle VM VirtualBox Guest Additions 6.0.4', version='6.0.4.0', install_date=None, install_location=None, install_source=None, modify_path=None, publisher='Oracle Corporation', uninstall_string='C:\\Program Files\\Oracle\\VirtualBox Guest Additions\\uninst.exe')
# InstalledApplication(name='Python 3.7.1 (Miniconda3 4.5.12 64-bit)', version='4.5.12', install_date=None, install_location=None, install_source=None, modify_path=None, publisher='Anaconda, Inc.', uninstall_string='"C:\\ProgramData\\Miniconda3\\Uninstall-Miniconda3.exe"')
# InstalledApplication(name='TortoiseHg 4.9.0 (x64)', version='4.9.0', install_date=datetime.date(2019, 4, 3), install_location=WindowsPath('C:/Program Files/TortoiseHg'), install_source=WindowsPath('C:/Users/Roman Inflianskas/Downloads'), modify_path='MsiExec.exe /I{9DF3A4E8-0C61-49CC-9170-79B0DE20EF25}', publisher='Steve Borho and others', uninstall_string='MsiExec.exe /I{9DF3A4E8-0C61-49CC-9170-79B0DE20EF25}')
# ...

Searching applications

import winapps

for app in winapps.search_installed('tortoisehg'):
    print(app)

Uninstalling applications

import winapps

# Assuming you have exactly one installed Notepad++
[npp] = winapps.search_installed('Notepad++')
npp.uninstall('/S')

# Simpler universal variant (uninstall all Notepad++ applications)
winapps.uninstall('Notepad++', args=['/S'])

Caveats

The library currently lookups only for software installed for all users. Only Windows Installer 3.0 .exe installers are supported in installer_command, install, and uninstall are supported.

Credits

This library is heavily inspired by win_pkg SaltStack module.

Metadata

Release files for winapps 0.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for winapps 0.2.0
File Size Uploaded
winapps-0.2.0.tar.gz 9.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for winapps 0.2.0
File Interpreter ABI Platform
winapps-0.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 18.4 kB

Release files / winapps-0.2.0.tar.gz

Download URL winapps-0.2.0.tar.gz
Size 9.4 kB
Tags Source
SHA-256 checksum
How to use checksums
12ffd0cea3a2802cecd65b83091e23aef0cc98ad4f7e0d0178ace7814e18bbb1
BLAKE2b-256 checksum
How to use checksums
ddc0715e5a20541187d7b8ebdf5a72fe6bff5f1d508c351908d707c881f4dd3e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.1.5 CPython/3.9.2 Linux/5.11.10-200.fc33.x86_64

Release files / winapps-0.2.0-py3-none-any.whl

Download URL winapps-0.2.0-py3-none-any.whl
Size 9.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
eaabaab9e239a57014b511c08ec4dd37afd9982f477fee47955fbdd2c9592ad8
BLAKE2b-256 checksum
How to use checksums
e8d1200d4c9416da5337e1b9c4f1d297687ba35c70d9f59881889929e0d743d3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.1.5 CPython/3.9.2 Linux/5.11.10-200.fc33.x86_64

Release history Release notifications | RSS feed

This release

0.2.0 This release

2 release files

0.1.6

2 release files

0.1.5

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page