# x-python **Repository Path**: cross-lang/x-python ## Basic Information - **Project Name**: x-python - **Description**: 一个实用的 Python 工具集合,提供了多种客户端工具和 SDK 使用示例 - **Primary Language**: Python - **License**: MIT - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2023-12-08 - **Last Updated**: 2026-05-27 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # x-python 一个实用的 Python 工具集合,提供了多种客户端工具、SDK 使用示例以及通用工具类。 ## 目录结构 ``` x-python/ ├── src/ # 源代码目录 │ ├── clients/ # 客户端工具 │ ├── tools/ # 通用工具类 │ ├── sdks/ # SDK 使用示例 │ ├── core/ # 核心模块(配置、日志) │ └── constants/ # 常量定义 ├── examples/ # 使用示例 ├── drafts/ # 草稿和实验性代码 └── topics/ # 技术专题 ``` - **src/clients/** - 客户端工具:FDFS、MongoDB、NFS、Nmap、OpenCTI、SSH、VMware vSphere - **src/tools/** - 通用工具类:算术、异步、认证、压缩、文件、加密、网络、时间、文本等 - **src/sdks/** - SDK 示例:QiniuCloud、pyVmomi - **examples/** - 完整的使用示例代码 ## 功能特性 ### 客户端工具 - FDFS 分布式文件系统客户端 - MongoDB 数据库客户端 - NFS 网络文件系统客户端 - Nmap 网络扫描工具客户端 - OpenCTI 威胁情报平台客户端 - SSH 远程连接客户端 - VMware vSphere 虚拟化平台客户端 ### 通用工具类 - **arithmetic_tool.py** - 算术工具,包含安全除法、四舍五入等 - **async_tool.py** - 异步工具,线程池执行等 - **authentication_tool.py** - 认证工具,令牌生成和验证 - **cls_tool.py** - 类工具,类对象操作 - **cmd_tool.py** - 命令行工具,执行命令和 bash 脚本 - **compression_tool.py** - 压缩工具,支持 Zip 和 7-Zip - **constant_tool.py** - 常量工具,常用常量定义 - **convert_tool.py** - 转换工具,XML、YAML、JSON 等格式转换 - **daily_entity_tool.py** - 日常实体工具,邮箱验证等 - **data_analytic_tool.py** - 数据分析工具,数据框操作 - **dict_tool.py** - 字典工具,字典操作 - **encryption_tool.py** - 加密工具,RSA 加密解密 - **enum_tool.py** - 枚举工具 - **file_tool.py** - 文件工具,文件操作和哈希计算 - **id_generator.py** - ID 生成工具,UUID 和时间戳 ID - **iterable_tool.py** - 可迭代对象工具 - **lock_tool.py** - 锁工具,Redis 分布式锁 - **multi_process_tool.py** - 多进程工具,生产者消费者模式 - **net_tool.py** - 网络工具,IP、MAC、网络相关操作 - **re_tool.py** - 正则工具,IP、MAC 正则匹配 - **structure_data_tool.py** - 结构化数据工具,分页、排序等 - **system_tool.py** - 系统工具 - **text_tool.py** - 文本工具,文本处理、字符串相似度、哈希计算等 - **time_tool.py** - 时间工具,时间戳、日期转换、周/月/季度操作 - **winreg_tool.py** - Windows 注册表工具,获取已安装软件信息 - **wmi_tool.py** - Windows WMI 工具,获取系统和硬件信息 ### SDK 使用示例 - QiniuCloud SDK 使用示例,包括存储、CDN、短信等服务的使用 - pyVmomi SDK 使用示例,包括虚拟机管理、网络配置等操作 ## 快速开始 ### 环境要求 - Python 3.9+ - uv (推荐的 Python 包管理工具) ### 安装依赖 本项目使用 [uv](https://github.com/astral-sh/uv) 管理依赖。 #### 安装 uv ```bash # Windows (PowerShell) powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex" # macOS/Linux curl -LsSf https://astral.sh/uv/install.sh | sh ``` #### 创建虚拟环境并安装依赖 ```bash # 同步依赖(会自动创建虚拟环境) uv sync # 运行 Python 脚本 uv run python your_script.py # 激活虚拟环境(可选) # Windows .venv\Scripts\activate # macOS/Linux source .venv/bin/activate ``` 根据需要使用的工具和 SDK,可以在 [pyproject.toml](pyproject.toml) 中添加相应的依赖包。 ### 使用示例 #### 通用工具使用示例 ```python # 以时间工具为例 from tools.time_tool import TimeTool # 获取当前时间戳 now_timestamp = TimeTool.get_now_timestamp() print(now_timestamp) # 获取当前日期 today = TimeTool.get_now_day() print(today) ``` ```python # 以文件工具为例 from tools.file_tool import FileTool # 获取文件大小 size = FileTool.get_file_size("test.txt", "kb") print(size) ``` #### 客户端工具使用示例 ```python # 以 MongoDB 客户端为例 from clients.mongodb_cli import MongoDB # 初始化客户端 client = MongoDB(host='localhost', port=27017) # 连接数据库 client.connect() # 执行操作 # ... # 关闭连接 client.close() ``` #### SDK 使用示例 ```python # 以 QiniuCloud SDK 为例 from sdks.QiniuCloud.qiniu import Auth # 初始化认证 access_key = 'your_access_key' secret_key = 'your_secret_key' q = Auth(access_key, secret_key) # 执行操作 # ... ``` ## 许可证 本项目采用 MIT 许可证开源。详情请参阅 [LICENSE](LICENSE) 文件。