Files
live-hub-py/core/huya/__init__.py
T

154 lines
4.2 KiB
Python

"""虎牙协议与业务客户端。"""
from typing import TYPE_CHECKING
from .http_client import HuyaHttpClient
from .wss_client import HuyaWssClient
if TYPE_CHECKING:
from .activity_structs import GetUserScoreReq, GetUserScoreResp
from .app_login import (
HuyaAppLoginError,
HuyaAppPasswordLogin,
HuyaAppQrAuthRequiredError,
login_huya_app_password,
)
from .login import (
HuyaCredentialError,
HuyaLoginError,
HuyaLoginResult,
HuyaPasswordLogin,
login_huya_password,
)
from .sms_login import (
HuyaSmsCodeResult,
HuyaSmsLogin,
login_huya_sms,
send_huya_sms_code,
)
from .verification import (
HuyaVerificationError,
HuyaVerificationSolver,
solve_huya_verification,
)
__all__ = [
"GetUserScoreReq",
"GetUserScoreResp",
"HuyaAppLoginError",
"HuyaAppPasswordLogin",
"HuyaAppQrAuthRequiredError",
"HuyaCredentialError",
"HuyaHttpClient",
"HuyaLoginError",
"HuyaLoginResult",
"HuyaPasswordLogin",
"HuyaSmsCodeResult",
"HuyaSmsLogin",
"HuyaVerificationError",
"HuyaVerificationSolver",
"HuyaWssClient",
"login_huya_app_password",
"login_huya_password",
"login_huya_sms",
"send_huya_sms_code",
"solve_huya_verification",
]
def __getattr__(name: str):
if name in {"GetUserScoreReq", "GetUserScoreResp"}:
from .activity_structs import GetUserScoreReq, GetUserScoreResp
values = {
"GetUserScoreReq": GetUserScoreReq,
"GetUserScoreResp": GetUserScoreResp,
}
globals().update(values)
return values[name]
if name in {
"HuyaCredentialError",
"HuyaLoginError",
"HuyaLoginResult",
"HuyaPasswordLogin",
"login_huya_password",
}:
from .login import (
HuyaCredentialError,
HuyaLoginError,
HuyaLoginResult,
HuyaPasswordLogin,
login_huya_password,
)
values = {
"HuyaCredentialError": HuyaCredentialError,
"HuyaLoginError": HuyaLoginError,
"HuyaLoginResult": HuyaLoginResult,
"HuyaPasswordLogin": HuyaPasswordLogin,
"login_huya_password": login_huya_password,
}
globals().update(values)
return values[name]
if name in {
"HuyaAppLoginError",
"HuyaAppQrAuthRequiredError",
"HuyaAppPasswordLogin",
"login_huya_app_password",
}:
from .app_login import (
HuyaAppLoginError,
HuyaAppPasswordLogin,
HuyaAppQrAuthRequiredError,
login_huya_app_password,
)
values = {
"HuyaAppLoginError": HuyaAppLoginError,
"HuyaAppQrAuthRequiredError": HuyaAppQrAuthRequiredError,
"HuyaAppPasswordLogin": HuyaAppPasswordLogin,
"login_huya_app_password": login_huya_app_password,
}
globals().update(values)
return values[name]
if name in {
"HuyaSmsCodeResult",
"HuyaSmsLogin",
"login_huya_sms",
"send_huya_sms_code",
}:
from .sms_login import (
HuyaSmsCodeResult,
HuyaSmsLogin,
login_huya_sms,
send_huya_sms_code,
)
values = {
"HuyaSmsCodeResult": HuyaSmsCodeResult,
"HuyaSmsLogin": HuyaSmsLogin,
"login_huya_sms": login_huya_sms,
"send_huya_sms_code": send_huya_sms_code,
}
globals().update(values)
return values[name]
if name in {
"HuyaVerificationError",
"HuyaVerificationSolver",
"solve_huya_verification",
}:
from .verification import (
HuyaVerificationError,
HuyaVerificationSolver,
solve_huya_verification,
)
values = {
"HuyaVerificationError": HuyaVerificationError,
"HuyaVerificationSolver": HuyaVerificationSolver,
"solve_huya_verification": solve_huya_verification,
}
globals().update(values)
return values[name]
raise AttributeError(f"module {__name__!r} has no attribute {name!r}")