skillfed

Appium-Python-Client

Python client for Appium

appium-python-client v6.0.0 4.7M downloads/30d#2,255 on PyPI1,839
Permissive license Apache-2.0 Active released

What it is and what it does

Appium Python Client is a Selenium-based library that adds mobile-specific automation capabilities to Python test scripts. It wraps the WebDriver Protocol and Appium server commands, allowing developers to write tests that control iOS, Android, and other mobile platforms using familiar Selenium syntax. The library depends on selenium and typing-extensions, and is designed to work alongside an Appium server instance that communicates with actual devices or emulators.

The package is production-ready (Development Status 5) and actively maintained, with recent releases addressing API changes and migration paths from older versions. It supports modern Python versions (3.10–3.14) and provides helper classes for platform-specific options (e.g., UiAutomator2Options for Android, XCUITestOptions for iOS). Users typically instantiate a webdriver.Remote connection to an Appium server, then use standard WebDriver actions and Appium-specific mobile extensions to interact with app elements.

Use it for:

  • Automate functional testing of native Android apps using UiAutomator2 or other Appium drivers.
  • Write cross-platform mobile test suites that run on both iOS and Android with shared test logic.
  • Perform UI automation and regression testing on mobile applications as part of CI/CD pipelines.
  • Validate app behavior under touch interactions, swipes, and other mobile-specific gestures using W3C WebDriver actions.
  • Test hybrid mobile apps (web views embedded in native apps) by combining Appium's mobile context switching with Selenium's web automation.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Extends Selenium Python bindings with Appium-specific commands and WebDriver Protocol support for automated mobile app testing on iOS, Android, and other platforms.

Yes. The package is actively maintained, has low install friction, carries a permissive Apache-2.0 license, and is the standard Python client for Appium mobile testing. It has no known vulnerabilities and integrates seamlessly with selenium. Install it if you need to automate mobile app testing; it is the expected tool for this purpose in Python.

Install

appium-python-client on PyPI

pip

pip install appium-python-client

uv

uv add appium-python-client

poetry

poetry add appium-python-client

Installing Appium-Python-Client

Before you install

Low friction install with only two runtime dependencies (selenium and typing-extensions). Actively maintained with a recent release; repository shows 1839 stars and last commit on 2026-08-14. Requires Python 3.10 or later.

License in practice

Licensed under Apache-2.0 (permissive), allowing commercial and private use with minimal restrictions—suitable for most development and testing scenarios.

Quickstart

pip install Appium-Python-Client

from appium import webdriver
from appium.options.android import UiAutomator2Options

options = UiAutomator2Options().load_capabilities({'platformName': 'Android'})
driver = webdriver.Remote('http://127.0.0.1:4723', options=options)

Requires a running Appium server (typically at http://127.0.0.1:4723) and a connected mobile device or emulator configured for testing.

Verify before relying

  • Whether the package works with Python 3.14 in practice (listed in classifiers but relatively new).
  • Specific version compatibility with selenium versions beyond 4.26.0 and the behavior of recent Selenium updates on Appium client stability.

Package facts

License Apache-2.0 (permissive)
Python support supports the current Python release (>=3.10)
Install friction low — pure-Python wheel
Runtime dependencies 2 — selenium, typing-extensions
Maintenance actively maintained — 6 days since the last release
Last repo commit
First released
Downloads 4,681,559/month — #2,255 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: appium_python_client-6.0.0-py3-none-any.whl

Keywords: appium, mobile automation, python client, selenium

Development Status :: 5 - Production/StableEnvironment :: ConsoleProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Topic :: Software Development :: Testing

Tags

mobile app automation testingappium python clientselenium mobile testingios android test automationwebdriver mobile protocolappium webdriver bindingsmobile ui testing framework
mobile-testingappiumui-automation

More Testing packages

pluggy

Pluggy provides a plugin system that lets you…

permissive · top 100 on PyPI

pytest

pytest is a testing framework that lets you…

permissive · top 100 on PyPI

virtualenv

virtualenv creates isolated Python environments…

permissive · top 100 on PyPI

coverage

Coverage.py measures which lines of Python code…

permissive · top 1,000 on PyPI

pytest-asyncio

pytest-asyncio is a pytest plugin that enables…

permissive · top 1,000 on PyPI

pytest-json-ctrf

A pytest plugin that generates test reports in…

permissive · top 1,000 on PyPI

robotframework-appiumlibrary

AppiumLibrary is a Robot Framework library that…

permissive · top 15,000 on PyPI

selenium-page-factory

Implements a page factory pattern for Selenium…

permissive · top 15,000 on PyPI

eyes-selenium

Visual testing SDK for Selenium and Appium…

unclear · top 15,000 on PyPI

selenium

Selenium provides Python bindings to automate…

permissive · top 1,000 on PyPI

facebook-wda

Python client library for controlling iOS…

permissive · top 15,000 on PyPI

percy-appium-app

Integrates Percy visual testing into Python…

permissive · top 15,000 on PyPI

selenium-wire

Extends Selenium's Python bindings to…

permissive · top 5,000 on PyPI

webdriver-manager

Automatically downloads, caches, and manages…

permissive · top 5,000 on PyPI

browserstack-sdk

A Python SDK for running Selenium WebDriver…

unclear · top 15,000 on PyPI

lambdatest-sdk-utils

Provides Python SDK utilities for integrating…

permissive · top 15,000 on PyPI