跳转到主要内容

osu!文件和lzma回放流的解析器

项目描述

PyPi version

osrparse,一个用于osu!回放的Python解析器

这是一个用于osu!回放文件的.osr格式的解析器,如维基百科中所述。

安装

要安装,只需

pip install osrparse

文档

请参阅完整文档以获取全面指南: https://kszlim.github.io/osu-replay-parser。以下是一个快速入门指南,但如果你有任何疑问,请务必阅读完整文档。

快速入门

from osrparse import Replay, parse_replay_data
# parse from a path
replay = Replay.from_path("path/to/osr.osr")

# or from an opened file object
with open("path/to/osr.osr") as f:
    replay = Replay.from_file(f)

# or from a string
with open("path/to/osr.osr") as f:
    replay_string = f.read()
replay = Replay.from_string(replay_string)

# a replay has various attributes
r = replay
print(r.mode, r.game_version, r.beatmap_hash, r.username,
    r.replay_hash, r.count_300, r.count_100, r.count_50,
    r.count_geki, r.count_miss, r.score, r.max_combo, r.perfect,
    r.mods, r.life_bar_graph, r.timestamp, r.replay_data,
    r.replay_id, r.rng_seed)

# parse the replay data from api v1's /get_replay endpoint
lzma_string = retrieve_from_api()
replay_data = parse_replay_data(lzma_string)
# replay_data is a list of ReplayEvents

# write a replay back to a path
replay.write_path("path/to/osr.osr")

# or to an opened file object
with open("path/to/osr.osr") as f:
    replay.write_file(f)

# or to a string
packed = replay.pack()

# edited attributes are saved
replay.username = "fake username"
replay.write_path("path/to/new_osr.osr")

项目详情


下载文件

下载适用于您平台的文件。如果您不确定选择哪个,请了解更多关于 安装包 的信息。

源分布

osrparse-7.0.0.tar.gz (11.0 kB 查看哈希值)

上传时间 源代码

构建分布版

osrparse-7.0.0-py3-none-any.whl (9.5 kB 查看哈希值)

上传时间 Python 3

由以下支持