chizumeiji/funstat-api

GitHub: chizumeiji/funstat-api

这是一个用于查询Telegram用户和群组统计的Python API客户端。

Stars: 9 | Forks: 0

# funstat-api 用于 [Funstat/Telelog](http://telelog.org/) API 的 Python 客户端 — Telegram 用户和群组统计。 支持 **同步** 和 **异步** 使用。 文档:https://chizumeiji.github.io/funstat-api/ ## 安装说明 ``` pip install funstat-api ``` ## 快速入门 ### 同步 ``` from funstat_api import FunstatClient, FunstatConfig # 可选:配置自定义 headers 或 base URL config = FunstatConfig(headers={"X-My-Header": "Value"}) fs = FunstatClient("your_token", config=config) # 获取用户 stats stats = fs.stats("durov") print(stats.data.total_msg_count) # 获取群组 members members = fs.get_group_members("https://t.me/mychat") # 用作 context manager with FunstatClient("your_token") as fs: print(fs.ping()) ``` ### 异步 ``` import asyncio from funstat_api import AsyncFunstatClient, UserHiddenError async def main(): async with AsyncFunstatClient("your_token") as fs: try: stats = await fs.stats("durov") print(stats.data.total_msg_count) except UserHiddenError: print("This user's data is hidden by privacy settings.") asyncio.run(main()) ``` ## 可用方法 | 方法 | 描述 | |--------|-------------| | `ping()` | 检查 API 可用性和延迟 | | `get_balance()` | 获取当前 token 余额 | | `resolve_username(username)` | 将用户名解析为用户信息 | | `basic_info_by_id(ids)` | 根据用户 ID 获取基本信息 | | `stats_min(user)` | 获取最小用户统计数据 | | `stats(user)` | 获取完整用户统计数据 | | `messages_count(user)` | 获取总消息数 | | `groups_count(user)` | 获取群组数量 | | `get_messages(user, ...)` | 获取分页消息列表 | | `get_chats(user)` | 获取用户的聊天列表 | | `get_names(user)` | 获取名字历史 | | `get_usernames(user)` | 获取用户名历史 | | `get_stickers(user)` | 获取使用过的表情包 | | `get_gifts(user)` | 获取礼物关系 | | `common_groups(user)` | 获取共同群组统计 | | `username_usage(username)` | 谁正在或曾经使用过某个用户名 | | `name_usage(name)` | 搜索名字使用情况 | | `rep(user)` | 获取用户声誉信息 | | `common_groups_for_users(ids)` | 获取指定用户的共同群组 | | `get_group_info(group)` | 获取群组/频道信息 | | `get_group_members(group)` | 获取群组成员 | | `search_text(query)` | 按文本搜索消息 | `user` 和 `group` 参数接受:数字 ID、`@用户名`,或 `https://t.me/...` 链接。 ## 依赖项 - `pydantic >= 2.0` - `requests >= 2.28` (同步客户端) - `httpx >= 0.24` (异步客户端) ## 鸣谢 - **作者:** [@meiji_dev](https://t.me/meiji_dev) - **有用的机器人 & 链接:** [@sgwlink](https://t.me/sgwlink) ## 许可证 MIT
标签:API开发, API集成, Python API客户端, Telegram分析, Telegram统计, 代码示例, 可观测性, 同步编程, 命令控制, 异步编程, 数据分析, 数据检索, 数据采集, 消息统计, 用户统计, 用户行为分析, 社交媒体分析, 统计工具, 群组分析, 运行时操纵, 逆向工具