Skip to main content

MySQL Connector/Python

https://img.shields.io/pypi/v/mysql-connector-python.svg https://img.shields.io/pypi/pyversions/mysql-connector-python.svg https://img.shields.io/pypi/l/mysql-connector-python.svg

MySQL Connector/Python enables Python programs to access MySQL databases, using an API that is compliant with the Python Database API Specification v2.0 (PEP 249).

Features

Licensing

Please refer to the README.txt and LICENSE.txt files, available in this repository, for further details.

Contributing

We greatly appreciate feedback from our users, including bug reports and code contributions. Your input helps us improve, and we thank you for any issues you report or code you contribute. Please refer to the contributing document for additional information.

Installation

Connector/Python contains the Classic and X DevAPI connector APIs, which are installed separately. Any of these can be installed from a binary or source distribution.

Binaries are distributed in the following package formats:

On the other hand, the source code is distributed as a compressed file from which a wheel package can be built.

The recommended way to install Connector/Python is via pip, which relies on WHEEL packages. For such a reason, it is the installation procedure that is going to be described moving forward.

Please, refer to the official MySQL documentation Connector/Python Installation to know more about installing from an RPM, or building and installing a WHEEL package from a source distribution.

Before installing a package with pip, it is strongly suggested to have the most recent pip version installed on your system. If your system already has pip installed, you might need to update it. Or you can use the standalone pip installer.

$ pip install mysql-connector-python

Installation Options

Connector packages included in MySQL Connector/Python allow you to install optional dependencies to unleash certain functionalities.

# 3rd party packages to unleash the telemetry functionality are installed
$ pip install mysql-connector-python[telemetry]

This installation option can be seen as a shortcut to install all the dependencies needed by a particular feature. Mind that this is optional and you are free to install the required dependencies by yourself.

Available options:

  • dns-srv

  • gssapi

  • webauthn

  • telemetry

Sample Code

import mysql.connector

# Connect to server
cnx = mysql.connector.connect(
    host="127.0.0.1",
    port=3306,
    user="mike",
    password="s3cre3t!")

# Get a cursor
cur = cnx.cursor()

# Execute a query
cur.execute("SELECT CURDATE()")

# Fetch one result
row = cur.fetchone()
print("Current date is: {0}".format(row[0]))

# Close connection
cnx.close()

HeatWave GenAI and Machine Learning Support

MySQL Connector/Python now includes an optional API for integrating directly with MySQL HeatWave’s AI and Machine Learning capabilities. This new SDK is designed to reduce the time required to generate proofs-of-concept (POCs) by providing an intuitive Pythonic interface that automates the management of SQL tables and procedures.

The new mysql.ai module offers two primary components:

  • GenAI: Provides implementations of LangChain’s abstract LLM, VectorStore, and Embeddings classes (MyLLM, MyVectorStore, MyEmbeddings). This ensures full interoperability with existing LangChain pipelines, allowing developers to easily substitute existing components with HeatWave-backed versions.

  • AutoML: Provides Scikit-Learn compatible estimators (MyClassifier, MyRegressor, MyAnomalyDetector, MyGenericTransformer) that inherit from standard Scikit-Learn mixins. These components accept Pandas DataFrames and can be dropped directly into existing Scikit-Learn pipelines and grid searches.

Note on Dependencies: These features introduce dependencies on langchain, pandas, and scikit-learn. To keep existing installations unchanged and the base connector lightweight, these dependencies are not installed by default. You must install them separately to use the mysql.ai features.

Example: GenAI Chatbot with Memory

This example demonstrates how to use MyLLM within a loop to create a simple chatbot that maintains conversation history.

from collections import deque
from mysql import connector
from mysql.ai.genai import MyLLM

def run_chatbot(db_connection, chat_history_size=5):
    # Initialize MyLLM with the database connection
    my_llm = MyLLM(db_connection)

    # Maintain a limited history for context
    chat_history = deque(maxlen=chat_history_size)
    system_msg = "System: You are a helpful AI assistant."

    while True:
        user_input = input("\nUser: ")
        if user_input.lower() in ["exit", "quit"]:
            break

        # Format history and invoke the LLM
        history = [system_msg] + list(chat_history) + [f"User: {user_input}"]
        prompt = "\n".join(history)

        # Invoke HeatWave GenAI
        response = my_llm.invoke(prompt)
        print(f"Bot: {response}")

        # Update history
        chat_history.append(f"User: {user_input}")
        chat_history.append(f"Bot: {response}")

# Usage
with connector.connect(user='root', database='mlcorpus') as db_connection:
    run_chatbot(db_connection)

Example: HeatWave AutoML in a Scikit-Learn Pipeline

This example shows how to use MyClassifier as a drop-in replacement within a standard Scikit-Learn pipeline.

import pandas as pd
from mysql import connector
from sklearn.pipeline import Pipeline
from sklearn.preprocessing import StandardScaler
from mysql.ai.ml import MyClassifier

# 1. Setup Data (Pandas DataFrame)
X = pd.DataFrame([[0.5, 0.1], [1.0, 0.8], [0.1, 0.2]], columns=["feat1", "feat2"])
y = pd.Series([0, 1, 0], name="target")

# 2. Connect and Train
with connector.connect(user='root', database='mlcorpus') as db_connection:
    # Initialize the HeatWave classifier
    clf = MyClassifier(db_connection)

    # Create a standard Scikit-Learn pipeline
    pipe = Pipeline([
        ("scaler", StandardScaler()),
        ("mysql_clf", clf)
    ])

    # Fit the model (automates upload and training on HeatWave)
    pipe.fit(X, y)

    # Predict
    preds = pipe.predict(X)
    print(f"Predictions: {preds}")

    # Score
    score = pipe.score(X, y)
    print(f"Accuracy: {score}")

Additional Resources

Metadata

Release files for mysql-connector-python 26.10.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 mysql-connector-python 26.10.0
File Size Uploaded Provenance
mysql_connector_python-26.10.0.tar.gz 12.3 MB Without provenance Details

Built distributions (wheels)

Table of built distributions (wheels) for mysql-connector-python 26.10.0
File
mysql_connector_python-26.10.0-py2.py3-none-any.whl Python 2, Python 3 none any Details
mysql_connector_python-26.10.0-cp314-cp314-win_amd64.whl CPython 3.14 CPython 3.14 Windows x86-64 Details
mysql_connector_python-26.10.0-cp314-cp314-manylinux_2_28_x86_64.whl CPython 3.14 CPython 3.14 Linux glibc 2.28+ x86-64 Details
mysql_connector_python-26.10.0-cp314-cp314-manylinux_2_28_aarch64.whl CPython 3.14 CPython 3.14 Linux glibc 2.28+ ARM64 Details
mysql_connector_python-26.10.0-cp314-cp314-macosx_14_0_arm64.whl CPython 3.14 CPython 3.14 macOS 14.0+ ARM64 Details
mysql_connector_python-26.10.0-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details
mysql_connector_python-26.10.0-cp313-cp313-manylinux_2_28_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.28+ x86-64 Details
mysql_connector_python-26.10.0-cp313-cp313-manylinux_2_28_aarch64.whl CPython 3.13 CPython 3.13 Linux glibc 2.28+ ARM64 Details
mysql_connector_python-26.10.0-cp313-cp313-macosx_14_0_arm64.whl CPython 3.13 CPython 3.13 macOS 14.0+ ARM64 Details
mysql_connector_python-26.10.0-cp312-cp312-manylinux_2_28_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.28+ x86-64 Details
mysql_connector_python-26.10.0-cp312-cp312-manylinux_2_28_aarch64.whl CPython 3.12 CPython 3.12 Linux glibc 2.28+ ARM64 Details
mysql_connector_python-26.10.0-cp312-cp312-macosx_14_0_arm64.whl CPython 3.12 CPython 3.12 macOS 14.0+ ARM64 Details
mysql_connector_python-26.10.0-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
mysql_connector_python-26.10.0-cp311-cp311-manylinux_2_28_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.28+ x86-64 Details
mysql_connector_python-26.10.0-cp311-cp311-manylinux_2_28_aarch64.whl CPython 3.11 CPython 3.11 Linux glibc 2.28+ ARM64 Details
mysql_connector_python-26.10.0-cp311-cp311-macosx_14_0_arm64.whl CPython 3.11 CPython 3.11 macOS 14.0+ ARM64 Details
mysql_connector_python-26.10.0-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details
mysql_connector_python-26.10.0-cp310-cp310-manylinux_2_28_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.28+ x86-64 Details
mysql_connector_python-26.10.0-cp310-cp310-manylinux_2_28_aarch64.whl CPython 3.10 CPython 3.10 Linux glibc 2.28+ ARM64 Details
mysql_connector_python-26.10.0-cp310-cp310-macosx_14_0_arm64.whl CPython 3.10 CPython 3.10 macOS 14.0+ ARM64 Details

Total release size: 400.4 MB

Release files / mysql_connector_python-26.10.0.tar.gz

Download URL mysql_connector_python-26.10.0.tar.gz
Size 12.3 MB
Tags Source
SHA-256 checksum
How to use checksums
cdc02299905b6bc335de396246e751e7c568c8cf61f3abc38c7fec8b0b0c4580
BLAKE2b-256 checksum
How to use checksums
21a8655982dc4208de67801442da33604e0c09ee6997aea27fc1d55a605ba8a0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.25

Release files / mysql_connector_python-26.10.0-py2.py3-none-any.whl

Download URL mysql_connector_python-26.10.0-py2.py3-none-any.whl
Size 480.9 kB
Tags Python 2 Python 3
SHA-256 checksum
How to use checksums
85643c8a38b7d089ed30b270d842b96a2529354eebea4aa4d8e4755a630487e8
BLAKE2b-256 checksum
How to use checksums
91247b2f91476ae6c182f69854dd8d12c51c2e11c5b887b8f85b48b1c9394159
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.25

Release files / mysql_connector_python-26.10.0-cp314-cp314-win_amd64.whl

Download URL mysql_connector_python-26.10.0-cp314-cp314-win_amd64.whl
Size 18.2 MB
Tags CPython 3.14 Windows x86-64
SHA-256 checksum
How to use checksums
40dc3091b1785058be861afdd8860d838bcca8cebfa85ed42de31cc079cab536
BLAKE2b-256 checksum
How to use checksums
06258c29f8a70e7788ca8d9cb45bb8d1247b0fed5fdbbc2b656c74db1460cd90
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.25

Release files / mysql_connector_python-26.10.0-cp314-cp314-manylinux_2_28_x86_64.whl

Download URL mysql_connector_python-26.10.0-cp314-cp314-manylinux_2_28_x86_64.whl
Size 21.5 MB
Tags CPython 3.14 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
4e586dd1b2906363a490c23c60e95857e0aa075f7b7bf7eed7d92afa7efba122
BLAKE2b-256 checksum
How to use checksums
e4179ae0959cfb06cb97a718e4c39b78404d264a254c1b11045bc98c6790f9c2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.25

Release files / mysql_connector_python-26.10.0-cp314-cp314-manylinux_2_28_aarch64.whl

Download URL mysql_connector_python-26.10.0-cp314-cp314-manylinux_2_28_aarch64.whl
Size 21.7 MB
Tags CPython 3.14 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
8d196364b8f39076a23b3e6ccf3c33e16b1bc53e028aa64778e5b3a0369f8a0f
BLAKE2b-256 checksum
How to use checksums
bcb955b0634077e23ceeeb2433a3dd44999ac6703abbe384cb01c57c9564a93d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.25

Release files / mysql_connector_python-26.10.0-cp314-cp314-macosx_14_0_arm64.whl

Download URL mysql_connector_python-26.10.0-cp314-cp314-macosx_14_0_arm64.whl
Size 20.0 MB
Tags CPython 3.14 macOS 14.0+ ARM64
SHA-256 checksum
How to use checksums
cacbbdeb9f159c55621651b0b0468c2a8c627cd4e598fbb012bfacf883bb734b
BLAKE2b-256 checksum
How to use checksums
ef54140d488e72dcc5caecec10826f5a2717fa8054d294584ed4307d675a0e6e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.25

Release files / mysql_connector_python-26.10.0-cp313-cp313-win_amd64.whl

Download URL mysql_connector_python-26.10.0-cp313-cp313-win_amd64.whl
Size 17.7 MB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
d8656aef64f2d1609ef933ec16730c0ef72da9bdfda5a484d50e2fab3ec6ce45
BLAKE2b-256 checksum
How to use checksums
fe7efcffa03780a5c51427cf70b419eac9e687e467074d470423ecd9a1279ae7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.25

Release files / mysql_connector_python-26.10.0-cp313-cp313-manylinux_2_28_x86_64.whl

Download URL mysql_connector_python-26.10.0-cp313-cp313-manylinux_2_28_x86_64.whl
Size 21.5 MB
Tags CPython 3.13 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
97371eb3bd3372c7b658a3a5fb91919d3fab100115ba346ee6708fcf08c1d150
BLAKE2b-256 checksum
How to use checksums
da629f428735c4f37e65a80647af156120ceb8fe243010bf7c7ac077ef23c0cc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.25

Release files / mysql_connector_python-26.10.0-cp313-cp313-manylinux_2_28_aarch64.whl

Download URL mysql_connector_python-26.10.0-cp313-cp313-manylinux_2_28_aarch64.whl
Size 21.7 MB
Tags CPython 3.13 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
c80d447825417010b50c5fa67a9917fc4b2be2a4bc70bfdb052c3459dd0ab3dc
BLAKE2b-256 checksum
How to use checksums
6c05a291fb5915ebadc2ca06bd84caa780325fe0a73bb6d2cb053ea4c3dde9ac
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.25

Release files / mysql_connector_python-26.10.0-cp313-cp313-macosx_14_0_arm64.whl

Download URL mysql_connector_python-26.10.0-cp313-cp313-macosx_14_0_arm64.whl
Size 20.0 MB
Tags CPython 3.13 macOS 14.0+ ARM64
SHA-256 checksum
How to use checksums
385b7906baec66c0aa4bf2bf2663cd8745f32a7b7878b54fe80bc53784638ca2
BLAKE2b-256 checksum
How to use checksums
80baaf82d2ad511140004ab474fc7bc012d468ce8d35fb45613ca850c38f9972
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.25

Release files / mysql_connector_python-26.10.0-cp312-cp312-manylinux_2_28_x86_64.whl

Download URL mysql_connector_python-26.10.0-cp312-cp312-manylinux_2_28_x86_64.whl
Size 21.5 MB
Tags CPython 3.12 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
2f6d6e37eb1d2d5e47054d84eb5ceeb02d3d960d87fac549acece3dda4caa504
BLAKE2b-256 checksum
How to use checksums
40627f8065288c4269b1b92c8d8b78c0333dc254bdb597a6feff18f86391ea27
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.25

Release files / mysql_connector_python-26.10.0-cp312-cp312-manylinux_2_28_aarch64.whl

Download URL mysql_connector_python-26.10.0-cp312-cp312-manylinux_2_28_aarch64.whl
Size 21.7 MB
Tags CPython 3.12 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
4c2cba134b4820a2fe236ae612c09c183ac8a417e423532d97f3d1d13b0eea1a
BLAKE2b-256 checksum
How to use checksums
cd3467f9a711f9579a22da2d24c6da0a67c84feb1d16c659416b14c997ef91fd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.25

Release files / mysql_connector_python-26.10.0-cp312-cp312-macosx_14_0_arm64.whl

Download URL mysql_connector_python-26.10.0-cp312-cp312-macosx_14_0_arm64.whl
Size 20.0 MB
Tags CPython 3.12 macOS 14.0+ ARM64
SHA-256 checksum
How to use checksums
4fb5bf238a89451a2695bd43fc9db6baaac824c125b0252dc1843edff6fc590e
BLAKE2b-256 checksum
How to use checksums
5e8f3cf34956b295f53ac355745d3c9c3e75cfafbae2ea113a2eb2f28a730a89
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.25

Release files / mysql_connector_python-26.10.0-cp311-cp311-win_amd64.whl

Download URL mysql_connector_python-26.10.0-cp311-cp311-win_amd64.whl
Size 17.7 MB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
89e3a16f644a64666b90f611a94d6764691caa621c30ac553eb3a06e727b5d16
BLAKE2b-256 checksum
How to use checksums
87e324c3238041c3458fda7081fc919b12d997f919250c184b62efa47817900a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.25

Release files / mysql_connector_python-26.10.0-cp311-cp311-manylinux_2_28_x86_64.whl

Download URL mysql_connector_python-26.10.0-cp311-cp311-manylinux_2_28_x86_64.whl
Size 21.5 MB
Tags CPython 3.11 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
d82d235beb404cbc3b32c90ec8d5bb42e734dd84ffc8e15fdacbe141608c7d9e
BLAKE2b-256 checksum
How to use checksums
53bda399290c3f1e01afe958f39c13b0841619b365fbd14a7b30070fa6bb99a0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.25

Release files / mysql_connector_python-26.10.0-cp311-cp311-manylinux_2_28_aarch64.whl

Download URL mysql_connector_python-26.10.0-cp311-cp311-manylinux_2_28_aarch64.whl
Size 21.7 MB
Tags CPython 3.11 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
cec173a1ba34469a9bacc5994c3f8999b8f2990fad916dc1674a3a87c9798edd
BLAKE2b-256 checksum
How to use checksums
d7abc3fbd904f6d2c28e99193aec834590dce4d62bf25615854b351168442350
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.25

Release files / mysql_connector_python-26.10.0-cp311-cp311-macosx_14_0_arm64.whl

Download URL mysql_connector_python-26.10.0-cp311-cp311-macosx_14_0_arm64.whl
Size 20.0 MB
Tags CPython 3.11 macOS 14.0+ ARM64
SHA-256 checksum
How to use checksums
d21cf597fdf1bfbecf22f10d41d12971aa10e7fda0463ad8f0ffdf9336140432
BLAKE2b-256 checksum
How to use checksums
f84da3cd2507bc14d5e36e9bcf88f18bcdc62d4b5e53bf23631feca02e7202d4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.25

Release files / mysql_connector_python-26.10.0-cp310-cp310-win_amd64.whl

Download URL mysql_connector_python-26.10.0-cp310-cp310-win_amd64.whl
Size 17.7 MB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
b7f5d5b68700d4f7306c13e8a1548c59e65c5cada2f98bdefbbf91a696fcf2c9
BLAKE2b-256 checksum
How to use checksums
100594aa51892889f42695194a9f08ce65a028ca2e00b6c0c11db023184305de
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.25

Release files / mysql_connector_python-26.10.0-cp310-cp310-manylinux_2_28_x86_64.whl

Download URL mysql_connector_python-26.10.0-cp310-cp310-manylinux_2_28_x86_64.whl
Size 21.5 MB
Tags CPython 3.10 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
8e0c27da9159a716232e375e147c80f35e5b993db4d31e657dfa690434637fea
BLAKE2b-256 checksum
How to use checksums
e2333724bd5182a2edb0a34626266f0d0c6d23a444768085cd49c923fdc61f91
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.25

Release files / mysql_connector_python-26.10.0-cp310-cp310-manylinux_2_28_aarch64.whl

Download URL mysql_connector_python-26.10.0-cp310-cp310-manylinux_2_28_aarch64.whl
Size 21.7 MB
Tags CPython 3.10 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
a7c9faae4b05968fa3657c081a9c9e9cbac42b9e24be0864cc0c6d3fc666a7ad
BLAKE2b-256 checksum
How to use checksums
51d0f1739da96d280559e23c5870fec08e00598b84e82f97a975344b6137acb9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.25

Release files / mysql_connector_python-26.10.0-cp310-cp310-macosx_14_0_arm64.whl

Download URL mysql_connector_python-26.10.0-cp310-cp310-macosx_14_0_arm64.whl
Size 20.0 MB
Tags CPython 3.10 macOS 14.0+ ARM64
SHA-256 checksum
How to use checksums
af96f4fd35570e804fc896a741ab4645ae1f949173952106fec6b287f9ecb52d
BLAKE2b-256 checksum
How to use checksums
1c669b2bd00cdbd8ca052701e43c1cc94bd1c48241d795d08b3aa99130985269
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.25

Security for mysql-connector-python 26.10.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

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