# Clickmouse
<div align = "center">
<a href="https://pypi.org/project/ClickMouse/">
<img src="https://img.shields.io/pypi/v/clickMouse.svg"
alt="pypi">
</a>
<a href="https://img.shields.io/pypi/pyversions/ClickMouse">
<img src="https://img.shields.io/pypi/pyversions/ClickMouse" alt="support-version">
</a>
<a href="https://github.com/gaogaotiantian/viztracer/blob/master/LICENSE">
<img src="https://img.shields.io/github/license/xystudio889/pyclickmouse" alt="license">
</a>
<a href="https://github.com/xystudio889/pyclickmouse/commits/master">
<img src="https://img.shields.io/github/last-commit/xystudio889/pyclickmouse/master" alt="commit">
</a>
<a href="https://github.com/sponsors/xystudio889">
<img src="https://img.shields.io/badge/%E2%9D%A4-Sponsor%20me-%23c96198?style=flat&logo=GitHub"
alt="sponsor">
</a>
<br />
<a href="https://github.com/xystudio889/clickmouse/releases">
<img src="https://img.shields.io/badge/点击下载-旧版本clickmouse-536af5?color=63eafa&logoColor=white">
</a>
</div>
## 版权声明
<a target="_blank" href="https://icons8.com/icon/13347/mouse">鼠标</a> 的图标 <a target="_blank" href="https://icons8.com">Icons8</a>
## 介绍
一款快捷,使用python制作的鼠标连点器。目前项目处于早期阶段,功能还不完善,欢迎大家提出宝贵意见。
这个软件可以有较多的版本,基本都是C/C++调用版本、python调用版本和命令行交互版本。
## 使用的第三方库和使用的功能
### python
wxpython:对于gui界面,他是图形核心框架
pyautogui:鼠标连点器核心
requests:用于检查版本号
nuitka:打包为gui或~~交互式命令行~~的库
cython:打包为pyd的库
setuptools:打包为python包的库
### 快速安装
输入`pip install -r requirements.txt`安装
## 支持调用的工具
- [x] C/C++头文件调用 使用原本C++版本的clickMouse改装而来 速度最快,兼容性最好,但是使用失效的可能性最大。可以从[releases](https://github.com/xystudio889/pyClickMouse)下载
- [x] 使用原本C++版本的clickMouse 速度最快,兼容性最好,但是使用失效的可能性最大,但是以停止更新,可以从[releases](https://github.com/xystudio889/pyClickMouse)下载,[之前的clickmouse项目](https://github.com/xystudio889/ClickMouse)
- [x] 使用.dll调用 基于C++语言,速度最快,兼容性较好,使用失效的可能性最大。(配置较难,推荐使用C/C++头文件)可以从[releases](https://github.com/xystudio889/pyClickMouse)下载
- [x] (开发人员推荐)python调用 速度中等,兼容性最好,使用失效的可能性最小。可以使用`pip install clickmouse`下载
- [x] 使用.pyd调用 基于python语言,速度较快,兼容性较差(不同版本的python可能不兼容),使用失效的可能性较小。可以从[releases](https://github.com/xystudio889/pyClickMouse)下载(单独编译仅需编译cython/目录)
- [x] (普通用户推荐)使用exe 使用 基于交互式命令行添加了gui。可以从[releases](https://github.com/xystudio889/pyClickMouse)下载
- [ ] 使用交互式命令行 使用 基于python语言,比gui轻便。~~可以从[releases](https://github.com/xystudio889/pyClickMouse)下载~~ 暂时没有该版本,敬请期待
- [ ] 使用标准命令行 使用 基于python语言。~~将会自带在除了C++版本外的所有发行版~~ 暂时没有该版本,敬请期待
## 安装和调用
Gui版本和~~命令行交互版本~~无需安装,直接运行即可。
C/C++头文件调用可以直接使用以下代码调用(需要配置include目录)
```C++
#include <clickMouse.h>
#include <iostream>
using namespace std;
int main(){
cout << CLICKMOUSE_VERSION << endl; // 打印版本信息,若成功输出一串数字,则安装成功
clickMouse(LEFT, 1000, 10, 10); // 连点10次左键,间隔为1000ms,按下时间为10ms,
return 0;
}
```
python调用或~~.pyd调用~~可以直接使用以下代码调用:
```python
import clickmouse
clickMouse.click_mouse(clickmouse.LEFT, 1000, 10, 10) # 连点10次左键,间隔为1000ms,按下时间为10ms,
```
~~命令行调用~~
```bash
ClickMouse.exe /h # 查看帮助
```
## 再次编译方法
请先`cd`到这个项目的根目录
### C/C++
#### 头文件
仅需修改头文件,就可以被调用
#### dll调用
使用visual studio修改`./dll/dll.sln`里的`源文件/dllmain.cpp`
#### gui旧版本
>[!NOTE]
>gui旧版本的再编译不接受pull request
使用visual studio修改`./ClickMouse-old/ClickMouse.sln`里的`源文件/clickmouse.cpp`
### python
建议先执行`pip install -r requirements.txt`
#### python库调用
修改`clickmouse/`下的代码,运行`pip install .`安装
#### pyd调用
修改`cython/main.py`的代码,然后执行
```python cython-setup.py build_ext --inplace```
编译结束后,该目录下应该会有个以`.pyd`结尾的文件。
#### gui版本
使用python打包工具打包,注意需要添加`res/`目录。
如:
`python -m nuitka --onefile --remove-output --msvc=latest --windows-console-mode="disable" --company-name="xystudio" --file-description="鼠标连点器" --file-version="2.1.0.5" --product-version="2.1.0" --product-name="ClickMouse" --copyright="Copyright © 2025 xystudio" --trademarks="®xystudio™" --windows-icon-from-ico=gui/res/icons/icon.ico --include-data-dir=gui/res=res gui/main.py`
## 功能
- 鼠标连点
- 自定义连点间隔
## 下载
前往releases下载,更新需要替换clickMouse.exe文件。
## 使用方法
鼠标连点,目前支持左键和右键。
下方的输入框输入间隔,再选择想要点击的类型即可开始连点。
### 使用优先级
普通用户:
```mermaid
graph LR
A[exe] --> B[交互式命令行]
```
开发人员:
```mermaid
graph LR
A[python] --> B[pyd调用] --> D[命令行调用]
C[C/C++] --> E[dll调用] --> D
```
鼠标连点器会一直保持运行,直到关闭程序或手动停止。
目前支持暂停和停止功能。
## 内容展望
- [x] 连点功能
- [x] 输入间隔
- [ ] 热键启动
- [ ] 输入次数
- [x] 自动更新
- [ ] 设置
- [ ] 命令行参数
Raw data
{
"_id": null,
"home_page": "https://github.com/xystudio/pyClickMouse",
"name": "ClickMouse",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.8",
"maintainer_email": null,
"keywords": "mouse, click, automation, clickmouse",
"author": "xystudio",
"author_email": "xystudio <173288240@qq.com>",
"download_url": "https://files.pythonhosted.org/packages/3b/ab/ca7a0dca27e37697bfb6ee362772b069a1d4b6c00e8c4dcc68765aa53e4a/clickmouse-2.1.1.tar.gz",
"platform": null,
"description": "# Clickmouse\r\n\r\n<div align = \"center\">\r\n <a href=\"https://pypi.org/project/ClickMouse/\">\r\n <img src=\"https://img.shields.io/pypi/v/clickMouse.svg\" \r\n alt=\"pypi\">\r\n </a>\r\n <a href=\"https://img.shields.io/pypi/pyversions/ClickMouse\">\r\n <img src=\"https://img.shields.io/pypi/pyversions/ClickMouse\" alt=\"support-version\">\r\n </a>\r\n <a href=\"https://github.com/gaogaotiantian/viztracer/blob/master/LICENSE\">\r\n <img src=\"https://img.shields.io/github/license/xystudio889/pyclickmouse\" alt=\"license\">\r\n </a>\r\n <a href=\"https://github.com/xystudio889/pyclickmouse/commits/master\">\r\n <img src=\"https://img.shields.io/github/last-commit/xystudio889/pyclickmouse/master\" alt=\"commit\">\r\n </a>\r\n <a href=\"https://github.com/sponsors/xystudio889\">\r\n <img src=\"https://img.shields.io/badge/%E2%9D%A4-Sponsor%20me-%23c96198?style=flat&logo=GitHub\"\r\n alt=\"sponsor\">\r\n </a>\r\n <br />\r\n <a href=\"https://github.com/xystudio889/clickmouse/releases\">\r\n <img src=\"https://img.shields.io/badge/\u70b9\u51fb\u4e0b\u8f7d-\u65e7\u7248\u672cclickmouse-536af5?color=63eafa&logoColor=white\">\r\n </a>\r\n</div>\r\n\r\n## \u7248\u6743\u58f0\u660e\r\n<a target=\"_blank\" href=\"https://icons8.com/icon/13347/mouse\">\u9f20\u6807</a> \u7684\u56fe\u6807 <a target=\"_blank\" href=\"https://icons8.com\">Icons8</a>\r\n\r\n## \u4ecb\u7ecd\r\n\u4e00\u6b3e\u5feb\u6377\uff0c\u4f7f\u7528python\u5236\u4f5c\u7684\u9f20\u6807\u8fde\u70b9\u5668\u3002\u76ee\u524d\u9879\u76ee\u5904\u4e8e\u65e9\u671f\u9636\u6bb5\uff0c\u529f\u80fd\u8fd8\u4e0d\u5b8c\u5584\uff0c\u6b22\u8fce\u5927\u5bb6\u63d0\u51fa\u5b9d\u8d35\u610f\u89c1\u3002\r\n\r\n\u8fd9\u4e2a\u8f6f\u4ef6\u53ef\u4ee5\u6709\u8f83\u591a\u7684\u7248\u672c\uff0c\u57fa\u672c\u90fd\u662fC/C++\u8c03\u7528\u7248\u672c\u3001python\u8c03\u7528\u7248\u672c\u548c\u547d\u4ee4\u884c\u4ea4\u4e92\u7248\u672c\u3002\r\n\r\n## \u4f7f\u7528\u7684\u7b2c\u4e09\u65b9\u5e93\u548c\u4f7f\u7528\u7684\u529f\u80fd\r\n### python\r\nwxpython\uff1a\u5bf9\u4e8egui\u754c\u9762\uff0c\u4ed6\u662f\u56fe\u5f62\u6838\u5fc3\u6846\u67b6\r\npyautogui\uff1a\u9f20\u6807\u8fde\u70b9\u5668\u6838\u5fc3\r\nrequests\uff1a\u7528\u4e8e\u68c0\u67e5\u7248\u672c\u53f7\r\nnuitka\uff1a\u6253\u5305\u4e3agui\u6216~~\u4ea4\u4e92\u5f0f\u547d\u4ee4\u884c~~\u7684\u5e93\r\ncython\uff1a\u6253\u5305\u4e3apyd\u7684\u5e93\r\nsetuptools\uff1a\u6253\u5305\u4e3apython\u5305\u7684\u5e93\r\n### \u5feb\u901f\u5b89\u88c5\r\n\u8f93\u5165`pip install -r requirements.txt`\u5b89\u88c5\r\n\r\n## \u652f\u6301\u8c03\u7528\u7684\u5de5\u5177\r\n- [x] C/C++\u5934\u6587\u4ef6\u8c03\u7528 \u4f7f\u7528\u539f\u672cC++\u7248\u672c\u7684clickMouse\u6539\u88c5\u800c\u6765 \u901f\u5ea6\u6700\u5feb\uff0c\u517c\u5bb9\u6027\u6700\u597d\uff0c\u4f46\u662f\u4f7f\u7528\u5931\u6548\u7684\u53ef\u80fd\u6027\u6700\u5927\u3002\u53ef\u4ee5\u4ece[releases](https://github.com/xystudio889/pyClickMouse)\u4e0b\u8f7d\r\n- [x] \u4f7f\u7528\u539f\u672cC++\u7248\u672c\u7684clickMouse \u901f\u5ea6\u6700\u5feb\uff0c\u517c\u5bb9\u6027\u6700\u597d\uff0c\u4f46\u662f\u4f7f\u7528\u5931\u6548\u7684\u53ef\u80fd\u6027\u6700\u5927\uff0c\u4f46\u662f\u4ee5\u505c\u6b62\u66f4\u65b0\uff0c\u53ef\u4ee5\u4ece[releases](https://github.com/xystudio889/pyClickMouse)\u4e0b\u8f7d\uff0c[\u4e4b\u524d\u7684clickmouse\u9879\u76ee](https://github.com/xystudio889/ClickMouse)\r\n- [x] \u4f7f\u7528.dll\u8c03\u7528 \u57fa\u4e8eC++\u8bed\u8a00\uff0c\u901f\u5ea6\u6700\u5feb\uff0c\u517c\u5bb9\u6027\u8f83\u597d\uff0c\u4f7f\u7528\u5931\u6548\u7684\u53ef\u80fd\u6027\u6700\u5927\u3002(\u914d\u7f6e\u8f83\u96be\uff0c\u63a8\u8350\u4f7f\u7528C/C++\u5934\u6587\u4ef6)\u53ef\u4ee5\u4ece[releases](https://github.com/xystudio889/pyClickMouse)\u4e0b\u8f7d\r\n- [x] (\u5f00\u53d1\u4eba\u5458\u63a8\u8350)python\u8c03\u7528 \u901f\u5ea6\u4e2d\u7b49\uff0c\u517c\u5bb9\u6027\u6700\u597d\uff0c\u4f7f\u7528\u5931\u6548\u7684\u53ef\u80fd\u6027\u6700\u5c0f\u3002\u53ef\u4ee5\u4f7f\u7528`pip install clickmouse`\u4e0b\u8f7d\r\n- [x] \u4f7f\u7528.pyd\u8c03\u7528 \u57fa\u4e8epython\u8bed\u8a00\uff0c\u901f\u5ea6\u8f83\u5feb\uff0c\u517c\u5bb9\u6027\u8f83\u5dee\uff08\u4e0d\u540c\u7248\u672c\u7684python\u53ef\u80fd\u4e0d\u517c\u5bb9\uff09\uff0c\u4f7f\u7528\u5931\u6548\u7684\u53ef\u80fd\u6027\u8f83\u5c0f\u3002\u53ef\u4ee5\u4ece[releases](https://github.com/xystudio889/pyClickMouse)\u4e0b\u8f7d(\u5355\u72ec\u7f16\u8bd1\u4ec5\u9700\u7f16\u8bd1cython/\u76ee\u5f55)\r\n- [x] (\u666e\u901a\u7528\u6237\u63a8\u8350)\u4f7f\u7528exe \u4f7f\u7528 \u57fa\u4e8e\u4ea4\u4e92\u5f0f\u547d\u4ee4\u884c\u6dfb\u52a0\u4e86gui\u3002\u53ef\u4ee5\u4ece[releases](https://github.com/xystudio889/pyClickMouse)\u4e0b\u8f7d\r\n- [ ] \u4f7f\u7528\u4ea4\u4e92\u5f0f\u547d\u4ee4\u884c \u4f7f\u7528 \u57fa\u4e8epython\u8bed\u8a00\uff0c\u6bd4gui\u8f7b\u4fbf\u3002~~\u53ef\u4ee5\u4ece[releases](https://github.com/xystudio889/pyClickMouse)\u4e0b\u8f7d~~ \u6682\u65f6\u6ca1\u6709\u8be5\u7248\u672c\uff0c\u656c\u8bf7\u671f\u5f85\r\n- [ ] \u4f7f\u7528\u6807\u51c6\u547d\u4ee4\u884c \u4f7f\u7528 \u57fa\u4e8epython\u8bed\u8a00\u3002~~\u5c06\u4f1a\u81ea\u5e26\u5728\u9664\u4e86C++\u7248\u672c\u5916\u7684\u6240\u6709\u53d1\u884c\u7248~~ \u6682\u65f6\u6ca1\u6709\u8be5\u7248\u672c\uff0c\u656c\u8bf7\u671f\u5f85\r\n\r\n\r\n## \u5b89\u88c5\u548c\u8c03\u7528\r\nGui\u7248\u672c\u548c~~\u547d\u4ee4\u884c\u4ea4\u4e92\u7248\u672c~~\u65e0\u9700\u5b89\u88c5\uff0c\u76f4\u63a5\u8fd0\u884c\u5373\u53ef\u3002\r\n\r\nC/C++\u5934\u6587\u4ef6\u8c03\u7528\u53ef\u4ee5\u76f4\u63a5\u4f7f\u7528\u4ee5\u4e0b\u4ee3\u7801\u8c03\u7528(\u9700\u8981\u914d\u7f6einclude\u76ee\u5f55)\r\n```C++\r\n#include <clickMouse.h>\r\n#include <iostream>\r\nusing namespace std;\r\n\r\nint main(){\r\n cout << CLICKMOUSE_VERSION << endl; // \u6253\u5370\u7248\u672c\u4fe1\u606f,\u82e5\u6210\u529f\u8f93\u51fa\u4e00\u4e32\u6570\u5b57\uff0c\u5219\u5b89\u88c5\u6210\u529f\r\n clickMouse(LEFT, 1000, 10, 10); // \u8fde\u70b910\u6b21\u5de6\u952e\uff0c\u95f4\u9694\u4e3a1000ms\uff0c\u6309\u4e0b\u65f6\u95f4\u4e3a10ms\uff0c\r\n return 0;\r\n}\r\n```\r\npython\u8c03\u7528\u6216~~.pyd\u8c03\u7528~~\u53ef\u4ee5\u76f4\u63a5\u4f7f\u7528\u4ee5\u4e0b\u4ee3\u7801\u8c03\u7528\uff1a\r\n```python\r\nimport clickmouse\r\n\r\nclickMouse.click_mouse(clickmouse.LEFT, 1000, 10, 10) # \u8fde\u70b910\u6b21\u5de6\u952e\uff0c\u95f4\u9694\u4e3a1000ms\uff0c\u6309\u4e0b\u65f6\u95f4\u4e3a10ms\uff0c\r\n```\r\n~~\u547d\u4ee4\u884c\u8c03\u7528~~\r\n```bash\r\nClickMouse.exe /h # \u67e5\u770b\u5e2e\u52a9\r\n```\r\n## \u518d\u6b21\u7f16\u8bd1\u65b9\u6cd5\r\n\u8bf7\u5148`cd`\u5230\u8fd9\u4e2a\u9879\u76ee\u7684\u6839\u76ee\u5f55\r\n### C/C++\r\n#### \u5934\u6587\u4ef6\r\n\u4ec5\u9700\u4fee\u6539\u5934\u6587\u4ef6\uff0c\u5c31\u53ef\u4ee5\u88ab\u8c03\u7528\r\n#### dll\u8c03\u7528\r\n\u4f7f\u7528visual studio\u4fee\u6539`./dll/dll.sln`\u91cc\u7684`\u6e90\u6587\u4ef6/dllmain.cpp`\r\n#### gui\u65e7\u7248\u672c\r\n>[!NOTE]\r\n>gui\u65e7\u7248\u672c\u7684\u518d\u7f16\u8bd1\u4e0d\u63a5\u53d7pull request\r\n\u4f7f\u7528visual studio\u4fee\u6539`./ClickMouse-old/ClickMouse.sln`\u91cc\u7684`\u6e90\u6587\u4ef6/clickmouse.cpp`\r\n### python\r\n\u5efa\u8bae\u5148\u6267\u884c`pip install -r requirements.txt`\r\n#### python\u5e93\u8c03\u7528\r\n\u4fee\u6539`clickmouse/`\u4e0b\u7684\u4ee3\u7801\uff0c\u8fd0\u884c`pip install .`\u5b89\u88c5\r\n#### pyd\u8c03\u7528\r\n\u4fee\u6539`cython/main.py`\u7684\u4ee3\u7801\uff0c\u7136\u540e\u6267\u884c\r\n```python cython-setup.py build_ext --inplace```\r\n\u7f16\u8bd1\u7ed3\u675f\u540e\uff0c\u8be5\u76ee\u5f55\u4e0b\u5e94\u8be5\u4f1a\u6709\u4e2a\u4ee5`.pyd`\u7ed3\u5c3e\u7684\u6587\u4ef6\u3002\r\n#### gui\u7248\u672c\r\n\u4f7f\u7528python\u6253\u5305\u5de5\u5177\u6253\u5305\uff0c\u6ce8\u610f\u9700\u8981\u6dfb\u52a0`res/`\u76ee\u5f55\u3002\r\n\u5982\uff1a\r\n`python -m nuitka --onefile --remove-output --msvc=latest --windows-console-mode=\"disable\" --company-name=\"xystudio\" --file-description=\"\u9f20\u6807\u8fde\u70b9\u5668\" --file-version=\"2.1.0.5\" --product-version=\"2.1.0\" --product-name=\"ClickMouse\" --copyright=\"Copyright \u00a9 2025 xystudio\" --trademarks=\"\u00aexystudio\u2122\" --windows-icon-from-ico=gui/res/icons/icon.ico --include-data-dir=gui/res=res gui/main.py`\r\n\r\n## \u529f\u80fd\r\n- \u9f20\u6807\u8fde\u70b9\r\n- \u81ea\u5b9a\u4e49\u8fde\u70b9\u95f4\u9694\r\n\r\n## \u4e0b\u8f7d\r\n\u524d\u5f80releases\u4e0b\u8f7d\uff0c\u66f4\u65b0\u9700\u8981\u66ff\u6362clickMouse.exe\u6587\u4ef6\u3002\r\n\r\n## \u4f7f\u7528\u65b9\u6cd5\r\n\u9f20\u6807\u8fde\u70b9\uff0c\u76ee\u524d\u652f\u6301\u5de6\u952e\u548c\u53f3\u952e\u3002\r\n\u4e0b\u65b9\u7684\u8f93\u5165\u6846\u8f93\u5165\u95f4\u9694\uff0c\u518d\u9009\u62e9\u60f3\u8981\u70b9\u51fb\u7684\u7c7b\u578b\u5373\u53ef\u5f00\u59cb\u8fde\u70b9\u3002\r\n\r\n### \u4f7f\u7528\u4f18\u5148\u7ea7\r\n\u666e\u901a\u7528\u6237\uff1a\r\n```mermaid\r\ngraph LR\r\nA[exe] --> B[\u4ea4\u4e92\u5f0f\u547d\u4ee4\u884c]\r\n```\r\n\u5f00\u53d1\u4eba\u5458\uff1a\r\n```mermaid\r\ngraph LR\r\nA[python] --> B[pyd\u8c03\u7528] --> D[\u547d\u4ee4\u884c\u8c03\u7528]\r\nC[C/C++] --> E[dll\u8c03\u7528] --> D\r\n```\r\n\u9f20\u6807\u8fde\u70b9\u5668\u4f1a\u4e00\u76f4\u4fdd\u6301\u8fd0\u884c\uff0c\u76f4\u5230\u5173\u95ed\u7a0b\u5e8f\u6216\u624b\u52a8\u505c\u6b62\u3002\r\n\u76ee\u524d\u652f\u6301\u6682\u505c\u548c\u505c\u6b62\u529f\u80fd\u3002\r\n## \u5185\u5bb9\u5c55\u671b\r\n- [x] \u8fde\u70b9\u529f\u80fd\r\n- [x] \u8f93\u5165\u95f4\u9694\r\n- [ ] \u70ed\u952e\u542f\u52a8\r\n- [ ] \u8f93\u5165\u6b21\u6570\r\n- [x] \u81ea\u52a8\u66f4\u65b0\r\n- [ ] \u8bbe\u7f6e\r\n- [ ] \u547d\u4ee4\u884c\u53c2\u6570\r\n",
"bugtrack_url": null,
"license": null,
"summary": "\u57fa\u4e8ePython\u7684\u9f20\u6807\u8fde\u70b9\u5de5\u5177",
"version": "2.1.1",
"project_urls": {
"Homepage": "https://github.com/xystudio/pyClickMouse"
},
"split_keywords": [
"mouse",
" click",
" automation",
" clickmouse"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "fb6a9453b88cee99a01e9b9b6dd5729510090d515ec8a5cbd6147276d8df0434",
"md5": "02fee9f5901bc8ca0130f01d160dbedd",
"sha256": "13b2ad88aeb7da6eaea4a458f50395bf4b6f252ec52b8e09be283cbcbed19019"
},
"downloads": -1,
"filename": "clickmouse-2.1.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "02fee9f5901bc8ca0130f01d160dbedd",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8",
"size": 6851,
"upload_time": "2025-08-25T03:57:48",
"upload_time_iso_8601": "2025-08-25T03:57:48.494335Z",
"url": "https://files.pythonhosted.org/packages/fb/6a/9453b88cee99a01e9b9b6dd5729510090d515ec8a5cbd6147276d8df0434/clickmouse-2.1.1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "3babca7a0dca27e37697bfb6ee362772b069a1d4b6c00e8c4dcc68765aa53e4a",
"md5": "fd029392a47e016048836f1014200ddc",
"sha256": "bae79ebac82604b07dd70b5e41aea25d9a32dd348f061db2df2a90b4454f49dc"
},
"downloads": -1,
"filename": "clickmouse-2.1.1.tar.gz",
"has_sig": false,
"md5_digest": "fd029392a47e016048836f1014200ddc",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8",
"size": 6721,
"upload_time": "2025-08-25T03:57:49",
"upload_time_iso_8601": "2025-08-25T03:57:49.737631Z",
"url": "https://files.pythonhosted.org/packages/3b/ab/ca7a0dca27e37697bfb6ee362772b069a1d4b6c00e8c4dcc68765aa53e4a/clickmouse-2.1.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-08-25 03:57:49",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "xystudio",
"github_project": "pyClickMouse",
"github_not_found": true,
"lcname": "clickmouse"
}