semvec/pypi-packages huggingface dataset:
zdpytools 0.1.45
Python工具集，包含飞书API、AutoDL API和日志工具
Requires Python: >=3.8

# zdpytools

Python工具集，提供日志、飞书API和AutoDL API集成功能。

## 功能

- **日志工具**：基于loguru的简单易用的日志模块
- **飞书API**：飞书开放平台API的封装，支持多维表格操作
- **AutoDL API**：基于httpx的AutoDL弹性部署API异步封装

## 安装

```
pip install zdpytools
```

## 使用示例

### 日志工具

```python
from zdpytools.utils.log import logger

logger.info("这是一条信息日志")
logger.error("这是一条错误日志")
```

### 飞书API

```python
import asyncio
from zdpytools.feishu import Feishu

async def example():
    fs = Feishu(app_id="你的飞书应用ID", app_secret="你的飞书应用密钥")
    try:
        # 查询多维表格记录
        result = await fs.bitable_records_search("app_token", "table_id")
        print(result)

        # 列出多维表格中的所有数据表
        tables = await fs.get_all_tables("app_token")
        for table in tables:
            print(f"表格ID: {table.get('id')}, 名称: {table.get('name')}")
    finally:
        await fs.close()

asyncio.run(example())
```

#### 飞书多维表格API

##### 列出数据表

```python
# 基本用法，获取第一页数据表
result = await fs.list_tables(app_token="YOUR_APP_TOKEN")

# 指定页面大小
result = await fs.list_tables(
    app_token="YOUR_APP_TOKEN",
    page_size=5
)

# 使用分页标记获取下一页
if result.get("has_more") and result.get("page_token"):
    next_page = await fs.list_tables(
        app_token="YOUR_APP_TOKEN",
        page_token=result.get("page_token"),
        page_size=5
    )

# 获取所有数据表（自动处理分页）
all_tables = await fs.get_all_tables(app_token="YOUR_APP_TOKEN")
```

### AutoDL API

```python
import asyncio
from zdpytools.autodl import AutoDLClient
from zdpytools.utils.log import logger

async def example():
    # 可以直接传入token或者设置环境变量 AUTODL_TOKEN
    async with AutoDLClient() as client:
        try:
            # 获取GPU库存
            gpu_stock = await client.get_gpu_stock(
                region_sign="westDC2",
                cuda_v_from=117,
                cuda_v_to=128
            )

            for gpu_info in gpu_stock:
                for gpu_name, stock in gpu_info.items():
                    logger.info(f"GPU型号: {gpu_name}, 空闲数量: {stock.get('idle_gpu_num')}")
        except Exception as e:
            logger.error(f"获取GPU库存失败: {e}")

asyncio.run(example())
```


## 命名原则

根据 Python 的最佳实践和代码可读性，建议采用以下命名规范：

1. **模块文件（.py文件）**：
   - 使用小写字母加下划线（snake_case）
   - 例如：`feishu.py`, `webhook.py`, `const.py`
   - 原因：这是 Python 社区的标准做法，符合 PEP 8 规范

2. **类文件**：
   - 使用驼峰命名法（CamelCase）
   - 例如：`BaseModel.py`, `FeishuBase.py`
   - 原因：类名通常使用驼峰法，这样更容易识别类的定义

3. **目录名**：
   - 使用小写字母加下划线
   - 例如：`feishu/`, `utils/`
   - 原因：保持与模块命名一致

4. **特殊文件**：
   - `__init__.py` 保持原样（这是 Python 包的标准命名）
   - `__pycache__` 保持原样（这是 Python 的标准目录）

这样的命名规范有以下优点：
1. 符合 Python 社区规范
2. 提高代码可读性
3. 便于区分模块和类
4. 保持一致性
5. 避免命名冲突





## 封装更新

<!-- 修改setup.py中的版本
```python
    version="xxx",
```

修改__init__.py中的版本
```python
__version__ = "0.1.1"
```



运行构建脚本 -->
```bash
python build_package.py
```
<!-- 发布
```bash
twine upload dist/*
``` -->

## 许可证

MIT
easyofd 0.5.6
easy operate OFD
Requires Python: >=3.8

# easyofd

## 关于这个库：

鉴于目前python解析ofd没有啥好用的库所以决定自己整一个。

若本库对你有所帮助可以star 支持一下开源作者，欢迎fork，欢迎issues。

提交issue前务必看此页：

提交issue前务必看此页：

提交issue前务必看此页：

https://github.com/renoyuan/easyofd/wiki/%E5%85%B3%E4%BA%8EIsuues%E6%8F%90%E4%BA%A4

### 更新

20250901 - v0.5.6

处理annotation_info异常

20250722 - v0.5.5

新增对注释的解析，解决部分文件把签章图片放在注释中无法解析的问题。暂只支持stamp,后续遇到其他类型注释再添加。

20250327 - v0.5.1
bug 修复 1 offset_i 存在空值情况  2 新增特殊的字体名规范映射处理 后续存在字体名问题需要优化 3 @Boundary 不存在 的样例异常处理
下个版本优化计划，新增 对存在色块渐变渲染 的模块

历史版本信息查看：https://github.com/renoyuan/easyofd/wiki/version_Footer

### 常见问题

目前一些常见使用问题包括 easyofd库如何下载怎么使用， linux系统缺少字体包怎么处理等常见问题后续会放到下面链接遇到后可以先看这个：

https://github.com/renoyuan/easyofd/wiki/FAQ

### 版本规划

1 环境，后续可能会尝试减少一些第三包的依赖压缩环境体积 -- 主要是opencv 和numpy

2 功能上 对于pfd2ofd 和 ofd 生成 可能会有一些优化

3 需求收集，若有其他相关easyofd 的需求和建议可以git 上给我提，有意思的需求我会考虑尝试。

### 关于提问-重要

:hand: 有疑问或者建议需求等等，优先看看FAQ文档和demo代码，没有的请提交issues，不要直接发邮件，不要直接发邮件。

:hand: 有啥问题在 github 上提 issues，有空的时候会尽力解答以及优化。邮箱只接受问题文件不做回复。

:hand: 解析错误的ofd文件请发我邮箱，github 不支持上传ofd文件。需要分析问题的，ofd文件很重要。

## 已实现功能 ：

1 解析ofd

2 ofd转pdf  转图片

3 pdf转ofd   转图片

4 jpg2ofd jpg2pfd

5 添加gui 工具实现上述功能

## 使用

### 安装

```shell
pip install easyofd
```

### 使用

参考 test\demo.py 文件 目前所有功能在这个里面都有体现

### ps:

0 代码使用有问题，可以先看 test\demo.py 文件

1 对于使用有任何疑问，欢迎提各种Issue.

2 目前ofd 文件使用尚未普及，作者接触的文件也不多，遇到无法解析的文件，可以发我（ofd文件不支持直接上传，打成tar包上传），有时间会去优化版本.

3 本库对你有所帮助可以star 支持一下作者，或者fork。

:hand:[参考文档实现](https://openstd.samr.gov.cn/bzgk/gb/newGbInfo?hcno=3AF6682D939116B6F5EED53D01A9DB5D )

项目链接： https://github.com/renoyuan/easyofd