Baike.dev
All toolsTrendingOpen sourceNewsSubmit
Log in
< 返回工具列表
M

mihomo

> 编程语言
开源

A simple Python Pydantic model for Honkai: Star Rail parsed data from the Mihomo API.

32.9K stars0 点赞0 次浏览
访问官网GitHub

工具介绍

A simple Python Pydantic model for Honkai: Star Rail parsed data from the Mihomo API.

mihomo

A simple python pydantic model (type hint and autocompletion support) for Honkai: Star Rail parsed data from the Mihomo API.

API url: https://api.mihomo.me/sr_info_parsed/{UID}?lang={LANG}

Installation

pip install -U git+https://github.com/KT-Yeh/mihomo.git

Usage

Basic

There are two parsed data formats:

  • V1:
    • URL: https://api.mihomo.me/sr_info_parsed/800333171?lang=en&version=v1
    • Fetching: use client.fetch_user_v1(800333171)
    • Data model: mihomo.models.v1.StarrailInfoParsedV1
    • All models defined in mihomo/models/v1 directory.
  • V2:
    • URL: https://api.mihomo.me/sr_info_parsed/800333171?lang=en
    • Fetching: use client.fetch_user(800333171)
    • Data model: mihomo.models.StarrailInfoParsed
    • All models defined in mihomo/models directory.

If you don't want to use client.get_icon_url to get the image url everytime, you can use client.fetch_user(800333171, replace_icon_name_with_url=True) to get the parsed data with asset urls.

Example

…

Tools

from mihomo import tools

Remove Duplicate Character

    data = await client.fetch_user(800333171)
    data = tools.remove_duplicate_character(data)

Merge Character Data

    old_data = await client.fetch_user(800333171)

    # Change characters in game and wait for the API to refresh
    # ...

    new_data = await client.fetch_user(800333171)
    data = tools.merge_character_data(new_data, old_data)

Data Persistence

Take pickle and json as an example

import pickle
import zlib
from mihomo import MihomoAPI, Language, StarrailInfoParsed

client = MihomoAPI(language=Language.EN)
data = await client.fetch_user(800333171)

# Save
pickle_data = zlib.compress(pickle.dumps(data))
print(len(pickle_data))
json_data = data.json(by_alias=True, ensure_ascii=False)
print(len(json_data))

# Load
data_from_pickle = pickle.loads(zlib.decompress(pickle_data))
data_from_json = StarrailInfoParsed.parse_raw(json_data)
print(type(data_from_pickle))
print(type(data_from_json))

核心特点

  • •URL: https://api.mihomo.me/sr_info_parsed/800333171?lang=en&version=v1
  • •Fetching: use client.fetch_user_v1(800333171)
  • •Data model: mihomo.models.v1.StarrailInfoParsedV1
  • •All models defined in mihomo/models/v1 directory.
  • •URL: https://api.mihomo.me/sr_info_parsed/800333171?lang=en
  • •Fetching: use client.fetch_user(800333171)
  • •Data model: mihomo.models.StarrailInfoParsed
  • •All models defined in mihomo/models directory.

> 标签

Pythonhonkai-star-railmihomopythonstar-rail-api

暂无评论,来聊聊你的看法吧

> 工具信息

发布日期2026年8月1日
最后更新2026年9月9日
分类编程语言
定价开源

> 相关工具

T
TypeScript
JavaScript 的超集,为前端与全栈提供静态类型
P
Python
通用编程语言,广泛用于 Web、数据与 AI
G
Go
Google 推出的简洁高效系统语言
Baike.dev

baike.dev helps you discover great languages, frameworks, databases, DevOps and cloud-native tools.

Quick links

  • Home
  • All tools
  • Trending
  • Open source

About

  • About us
  • Community
  • News

Contribute

Found a great developer tool? Share it with the community.

Submit a tool
© 2026 baike.dev Developer EncyclopediaUpdated daily · Discover great developer tools