Skip to content

Calculator Client

CalculatorClient

CalculatorClient(
    cookies: Optional[AnyCookieOrHeader] = None,
    *,
    authkey: Optional[str] = None,
    lang: Lang = "en-us",
    region: Region = OVERSEAS,
    proxy: Optional[str] = None,
    game: Optional[Game] = None,
    uid: Optional[int] = None,
    hoyolab_id: Optional[int] = None,
    device_id: Optional[str] = None,
    device_fp: Optional[str] = None,
    headers: Optional[LooseHeaders] = None,
    cache: Optional[BaseCache] = None,
    debug: bool = False,
    on_cookie_update: Optional[CookieUpdateHook] = None,
)

Calculator component.

Methods:

batch_calculator

batch_calculator(
    *, lang: Optional[str] = None
) -> BatchCalculator

Create a batch calculator builder object.

calculator

calculator(*, lang: Optional[str] = None) -> Calculator

Create a calculator builder object.

furnishings_calculator

furnishings_calculator(
    *, lang: Optional[str] = None
) -> FurnishingCalculator

Create a calculator builder object.

get_calculator_artifacts async

get_calculator_artifacts(
    *,
    query: Optional[str] = None,
    pos: int = 1,
    rarities: Optional[Sequence[int]] = None,
    lang: Optional[str] = None,
) -> Sequence[CalculatorArtifact]

Get all artifacts provided by the Enhancement Progression Calculator.

get_calculator_characters async

get_calculator_characters(
    *,
    query: Optional[str] = None,
    elements: Optional[Sequence[int]] = None,
    weapon_types: Optional[Sequence[int]] = None,
    include_traveler: bool = False,
    sync: bool = False,
    uid: Optional[int] = None,
    lang: Optional[str] = None,
) -> Sequence[CalculatorCharacter]

Get all characters provided by the Enhancement Progression Calculator.

get_calculator_furnishings async

get_calculator_furnishings(
    *,
    types: Optional[int] = None,
    rarities: Optional[int] = None,
    lang: Optional[str] = None,
) -> Sequence[CalculatorFurnishing]

Get all furnishings provided by the Enhancement Progression Calculator.

get_calculator_weapons async

get_calculator_weapons(
    *,
    query: Optional[str] = None,
    types: Optional[Sequence[int]] = None,
    rarities: Optional[Sequence[int]] = None,
    lang: Optional[str] = None,
) -> Sequence[CalculatorWeapon]

Get all weapons provided by the Enhancement Progression Calculator.

get_character_details async

get_character_details(
    character: IDOr[BaseCharacter],
    *,
    uid: Optional[int] = None,
    lang: Optional[str] = None,
) -> CalculatorCharacterDetails

Get the weapon, artifacts and talents of a character.

Not related to the Battle Chronicle. This data is always private.

get_complete_artifact_set async

get_complete_artifact_set(
    artifact: IDOr[Union[Artifact, CalculatorArtifact]],
    *,
    lang: Optional[str] = None,
) -> Sequence[CalculatorArtifact]

Get all other artifacts that share a set with any given artifact.

Doesn't return the artifact passed into this function.

get_teapot_replica_blueprint async

get_teapot_replica_blueprint(
    share_code: int,
    *,
    region: Optional[str] = None,
    uid: Optional[int] = None,
    lang: Optional[str] = None,
) -> Sequence[CalculatorFurnishing]

Get furnishings used by a teapot replica blueprint.

request_calculator async

request_calculator(
    endpoint: str,
    *,
    method: str = "POST",
    lang: Optional[str] = None,
    params: Optional[Mapping[str, Any]] = None,
    data: Optional[Mapping[str, Any]] = None,
    headers: Optional[LooseHeaders] = None,
    api_version: int = 1,
    **kwargs: Any,
) -> Mapping[str, Any]

Make a request towards the calculator endpoint.

update_character_names async

update_character_names(
    *, lang: Optional[str] = None
) -> None

Update stored db characters with the names from the calculator.