跳转至

LyricApi

modules.lyric.LyricApi

LyricApi(client: Client)

Bases: ApiModule

歌词相关 API.

Source code in qqmusic_api/modules/_base.py
def __init__(self, client: "Client") -> None:
    self._client = client

get_lyric

get_lyric(
    value: str | int,
    *,
    qrc: bool = False,
    trans: bool = False,
    roma: bool = False,
)

获取歌词原始数据.

PARAMETER DESCRIPTION
value

歌曲 ID 或 MID.

TYPE: str | int

qrc

是否获取逐字歌词 (逐字歌词可能需要特定权限).

TYPE: bool DEFAULT: False

trans

是否获取翻译.

TYPE: bool DEFAULT: False

roma

是否获取罗马音.

TYPE: bool DEFAULT: False

Source code in qqmusic_api/modules/lyric.py
def get_lyric(
    self,
    value: str | int,
    *,
    qrc: bool = False,
    trans: bool = False,
    roma: bool = False,
):
    """获取歌词原始数据.

    Args:
        value: 歌曲 ID 或 MID.
        qrc: 是否获取逐字歌词 (逐字歌词可能需要特定权限).
        trans: 是否获取翻译.
        roma: 是否获取罗马音.
    """
    params: dict[str, Any] = {
        "crypt": 1,
        "lrc_t": 0,
        "qrc": qrc,
        "qrc_t": 0,
        "roma": roma,
        "roma_t": 0,
        "trans": trans,
        "trans_t": 0,
        "type": 1,
    }
    params.update(self._build_query_common_params())
    if isinstance(value, int):
        params["songId"] = value
    else:
        params["songMid"] = value

    return self._build_request(
        module="music.musichallSong.PlayLyricInfo",
        method="GetPlayLyricInfo",
        param=params,
        response_model=GetLyricResponse,
    )