Install Python packages from wheel (.whl) files

David Y.

The Problem

I have a Python package in a wheel file (requests-2.31.0-py3-none-any.whl). What is this file and how do I install it?

The Solution

Wheel files with the extension .whl are built distributions of Python packages designed to facilitate quick and easy installation. Unlike source distributions (commonly distributed as .tar.gz archives), .whl files include precompiled binary components. This means these components do not have to be built as part of the installation process, speeding up the process and avoiding the need for compilers. Wheel files are also usually smaller than source distributions.

Because binary components are precompiled, different wheel files may be required for different operating systems. For example, the cryptography package has different wheel files for Windows, Linux and macOS. Ensure that the wheel file being installed contains the name of the platform or any in its filename.

Python’s pip package manager supports wheel files and will often use them behind the scenes when downloading from a package repository. If a given package is available in a system-compatible wheel format, pip will download and install it instead of the source distribution.

To install a local wheel file, we can pass its name to pip install:

pip install requests-2.31.0-py3-none-any.whl

Note that this installation method will be the same whether we’re installing the package for our current OS user or within a virtual environment. We can verify the installation by opening a Python interpreter and importing the package:

import requests

If no error is produced, the installation was successful.

Get Started With Sentry

Get actionable, code-level insights to resolve Python performance bottlenecks and errors.

  1. Create a free Sentry account

  2. Create a Python project and note your DSN

  3. Grab the Sentry Python SDK

pip install --upgrade sentry-sdk
  1. Configure your DSN
import sentry_sdk sentry_sdk.init( "https://<key>@sentry.io/<project>", # Set traces_sample_rate to 1.0 to capture 100% # of transactions for performance monitoring. # We recommend adjusting this value in production. traces_sample_rate=1.0, )

Loved by over 4 million developers and more than 90,000 organizations worldwide, Sentry provides code-level observability to many of the world’s best-known companies like Disney, Peloton, Cloudflare, Eventbrite, Slack, Supercell, and Rockstar Games. Each month we process billions of exceptions from the most popular products on the internet.

Share on Twitter
Bookmark this page
Ask a questionJoin the discussion

Related Answers

A better experience for your users. An easier life for your developers.

    TwitterGitHubDribbbleLinkedinDiscord
© 2024 • Sentry is a registered Trademark
of Functional Software, Inc.