human-mouse


Namehuman-mouse JSON
Version 0.1.1 PyPI version JSON
download
home_pagehttps://github.com/sarperavci/human_mouse
SummaryA package that simulates realistic human-like mouse movements
upload_time2025-01-11 14:41:43
maintainerNone
docs_urlNone
authorSarper AVCI
requires_python>=3.10
licenseNone
keywords mouse automation human-like movement simulation testing
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Human Mouse 🖱️

🎯 Human-like mouse movements powered by bezier curves and spline interpolation. Ultra-realistic cursor automation.

[![PyPI version](https://badge.fury.io/py/human-mouse.svg)](https://badge.fury.io/py/human-mouse)
[![Python 3.10+](https://img.shields.io/badge/python-3.10+-blue.svg)](https://www.python.org/downloads/)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)

## Overview

Human Mouse is a sophisticated Python package that generates ultra-realistic mouse movements by implementing advanced mathematical algorithms. It uses a combination of bezier curves and spline interpolation to create smooth, natural-looking cursor trajectories that closely mimic human behavior.

## Installation

```bash
pip install human-mouse
```

## Core Functions & Examples

### Basic Movement

Move cursor to specific coordinates with natural trajectory

```python
mouse = MouseController()
mouse.move(500, 300)  # Move to coordinates
mouse.move(800, 600, speed_factor=0.5)  # Move faster
```

### Random Movement

Move to a random screen position using human-like patterns

```python
mouse.move_random()  # Move to random position
mouse.move_random(speed_factor=2.0)  # Slower random movement
```

### Click Operations
    
Execute a single click

```python
mouse.perform_click(500, 300)  # Move and click
```

Natural double click
```python
mouse.perform_double_click(500, 300)  # Move and double click
```

Right-click action
```python
mouse.perform_context_click(500, 300)  # Move and right click
```

### Movement Patterns

Enable zigzag movements for more natural patterns
```python
zigzag_mouse = MouseController(always_zigzag=True)
zigzag_mouse.move(500, 300)
```

### Virtual Display Support

Linux virtual display support
```python
virtual_mouse = MouseController(is_virtual=True)
virtual_mouse.move(500, 300)
```

## Advanced Features

### Movement Patterns
- Bezier curve interpolation for smooth trajectories
- Spline-based path generation
- Randomized movement variance
- Natural acceleration/deceleration
- Configurable zigzag patterns

### Platform Support
- Windows: Full native support
- macOS: Full native support
- Linux: Supports both native and virtual displays

## Complete Example

```python
from human_mouse import MouseController
import time

# Initialize controller
mouse = MouseController(always_zigzag=True)

# Perform series of actions
mouse.move(500, 300)  # Move to position
time.sleep(0.5)  # Wait briefly
mouse.perform_click()  # Click
time.sleep(0.5)  # Wait briefly
mouse.move_random()  # Move to random position
mouse.perform_double_click()  # Double click
```

## Technical Requirements

- Python 3.10+
- Dependencies:
  - numpy
  - pyautogui
  - scipy
  - python-xlib (optional, for Linux virtual display)

## Contributing

We welcome contributions! Please feel free to submit pull requests.

## License

MIT License - see the LICENSE file for details.

## Support

- Issues: [GitHub Issues](https://github.com/sarperavci/human_mouse/issues)

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/sarperavci/human_mouse",
    "name": "human-mouse",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.10",
    "maintainer_email": null,
    "keywords": "mouse, automation, human-like, movement, simulation, testing",
    "author": "Sarper AVCI",
    "author_email": "sarperavci20@gmail.com",
    "download_url": "https://files.pythonhosted.org/packages/13/27/d6e864646cc369cf915945e07ad9628f8e4be53140f067977f5ce485f72a/human_mouse-0.1.1.tar.gz",
    "platform": null,
    "description": "# Human Mouse \ud83d\uddb1\ufe0f\n\n\ud83c\udfaf Human-like mouse movements powered by bezier curves and spline interpolation. Ultra-realistic cursor automation.\n\n[![PyPI version](https://badge.fury.io/py/human-mouse.svg)](https://badge.fury.io/py/human-mouse)\n[![Python 3.10+](https://img.shields.io/badge/python-3.10+-blue.svg)](https://www.python.org/downloads/)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n\n## Overview\n\nHuman Mouse is a sophisticated Python package that generates ultra-realistic mouse movements by implementing advanced mathematical algorithms. It uses a combination of bezier curves and spline interpolation to create smooth, natural-looking cursor trajectories that closely mimic human behavior.\n\n## Installation\n\n```bash\npip install human-mouse\n```\n\n## Core Functions & Examples\n\n### Basic Movement\n\nMove cursor to specific coordinates with natural trajectory\n\n```python\nmouse = MouseController()\nmouse.move(500, 300)  # Move to coordinates\nmouse.move(800, 600, speed_factor=0.5)  # Move faster\n```\n\n### Random Movement\n\nMove to a random screen position using human-like patterns\n\n```python\nmouse.move_random()  # Move to random position\nmouse.move_random(speed_factor=2.0)  # Slower random movement\n```\n\n### Click Operations\n    \nExecute a single click\n\n```python\nmouse.perform_click(500, 300)  # Move and click\n```\n\nNatural double click\n```python\nmouse.perform_double_click(500, 300)  # Move and double click\n```\n\nRight-click action\n```python\nmouse.perform_context_click(500, 300)  # Move and right click\n```\n\n### Movement Patterns\n\nEnable zigzag movements for more natural patterns\n```python\nzigzag_mouse = MouseController(always_zigzag=True)\nzigzag_mouse.move(500, 300)\n```\n\n### Virtual Display Support\n\nLinux virtual display support\n```python\nvirtual_mouse = MouseController(is_virtual=True)\nvirtual_mouse.move(500, 300)\n```\n\n## Advanced Features\n\n### Movement Patterns\n- Bezier curve interpolation for smooth trajectories\n- Spline-based path generation\n- Randomized movement variance\n- Natural acceleration/deceleration\n- Configurable zigzag patterns\n\n### Platform Support\n- Windows: Full native support\n- macOS: Full native support\n- Linux: Supports both native and virtual displays\n\n## Complete Example\n\n```python\nfrom human_mouse import MouseController\nimport time\n\n# Initialize controller\nmouse = MouseController(always_zigzag=True)\n\n# Perform series of actions\nmouse.move(500, 300)  # Move to position\ntime.sleep(0.5)  # Wait briefly\nmouse.perform_click()  # Click\ntime.sleep(0.5)  # Wait briefly\nmouse.move_random()  # Move to random position\nmouse.perform_double_click()  # Double click\n```\n\n## Technical Requirements\n\n- Python 3.10+\n- Dependencies:\n  - numpy\n  - pyautogui\n  - scipy\n  - python-xlib (optional, for Linux virtual display)\n\n## Contributing\n\nWe welcome contributions! Please feel free to submit pull requests.\n\n## License\n\nMIT License - see the LICENSE file for details.\n\n## Support\n\n- Issues: [GitHub Issues](https://github.com/sarperavci/human_mouse/issues)\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "A package that simulates realistic human-like mouse movements",
    "version": "0.1.1",
    "project_urls": {
        "Bug Tracker": "https://github.com/sarperavci/human_mouse/issues",
        "Documentation": "https://github.com/sarperavci/human_mouse#readme",
        "Homepage": "https://github.com/sarperavci/human_mouse"
    },
    "split_keywords": [
        "mouse",
        " automation",
        " human-like",
        " movement",
        " simulation",
        " testing"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "d0ac583096a8b0970bba3e133cf6a9fd4a666c291c486a2ba79be8b1500be2d0",
                "md5": "b9808559bb399667ee1d66aec411386f",
                "sha256": "8e7492afa795fff14acd974382a981acbf28d08ae48fc4830741242b8fcc0136"
            },
            "downloads": -1,
            "filename": "human_mouse-0.1.1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "b9808559bb399667ee1d66aec411386f",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.10",
            "size": 5204,
            "upload_time": "2025-01-11T14:41:40",
            "upload_time_iso_8601": "2025-01-11T14:41:40.863858Z",
            "url": "https://files.pythonhosted.org/packages/d0/ac/583096a8b0970bba3e133cf6a9fd4a666c291c486a2ba79be8b1500be2d0/human_mouse-0.1.1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "1327d6e864646cc369cf915945e07ad9628f8e4be53140f067977f5ce485f72a",
                "md5": "769a3a964dc105b2c91cc4d9da7d8fe0",
                "sha256": "f0d336ea90e1701c62bd39102960d899e8ca936d9f1d693ad98f3121d270d030"
            },
            "downloads": -1,
            "filename": "human_mouse-0.1.1.tar.gz",
            "has_sig": false,
            "md5_digest": "769a3a964dc105b2c91cc4d9da7d8fe0",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.10",
            "size": 5972,
            "upload_time": "2025-01-11T14:41:43",
            "upload_time_iso_8601": "2025-01-11T14:41:43.007499Z",
            "url": "https://files.pythonhosted.org/packages/13/27/d6e864646cc369cf915945e07ad9628f8e4be53140f067977f5ce485f72a/human_mouse-0.1.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-01-11 14:41:43",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "sarperavci",
    "github_project": "human_mouse",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "lcname": "human-mouse"
}
        
Elapsed time: 3.08392s