client
core.client
QQMusic API 客户端.
Client
Client(
credential: Credential | None = None,
*,
platform: Platform | None = None,
device_path: str | None = None,
max_concurrency: int | None = None,
transport: Transport | None = None,
)
QQMusic API Client.
初始化客户端实例.
| PARAMETER | DESCRIPTION |
|---|---|
credential
|
全局默认凭证.
TYPE:
|
platform
|
全局默认请求平台.
TYPE:
|
device_path
|
设备信息文件路径.
TYPE:
|
max_concurrency
|
共享并发容量与分区 worker 上限. 必须为正整数,
TYPE:
|
transport
|
外部注入的传输实现 (满足 Transport 协议); 注入后
TYPE:
|
| RAISES | DESCRIPTION |
|---|---|
ValueError
|
max_concurrency 非正整数. |
Source code in qqmusic_api/core/client.py
close
async
execute
async
execute(request: BaseRequest[ResultT]) -> ResultT
执行单个请求描述符并解析响应结果.
| PARAMETER | DESCRIPTION |
|---|---|
request
|
要执行的请求描述符.
TYPE:
|
| RETURNS | DESCRIPTION |
|---|---|
ResultT
|
解析后的响应模型实例或原始数据字典. |
Source code in qqmusic_api/core/client.py
stream
async
stream(
request: HttpRequest[Any],
) -> AsyncGenerator[RawStream, None]
打开流式响应租约.
进入上下文时按需打开响应流, 退出上下文时保证释放底层网络租约.
| PARAMETER | DESCRIPTION |
|---|---|
request
|
要以流式方式执行的 HTTP 请求描述符.
TYPE:
|
| YIELDS | DESCRIPTION |
|---|---|
AsyncGenerator[RawStream, None]
|
原始数据流对象. |
| RAISES | DESCRIPTION |
|---|---|
TypeError
|
请求类型不支持流式, 或传输实现无流式能力. |
Source code in qqmusic_api/core/client.py
gather
async
gather(
requests: Iterable[BaseRequest[ResultT]],
*,
batch_size: int = 20,
return_exceptions: Literal[False] = False,
) -> list[ResultT]
gather(
requests: Iterable[BaseRequest[Any]],
*,
batch_size: int = 20,
return_exceptions: bool = False,
) -> list[Any]
批量并发执行一组请求描述符并返回其执行结果.