Skip to main content

tensoul-py

Convert MahjongSoul log into tenhou.net/6 format. (Inspired by https://github.com/Equim-chan/tensoul)

Usage

You need to have an account from CN server, because only accounts from CN server have the ability to login with username and password.

import json
import sys

from tensoul import MajsoulPaipuDownloader


username = "foo@bar.com"
password = "foobar"
record_uuid = "123456-abcdefgh-1234-abcd-1234-12345678abcd"  # taken from majsoul log link: https://game.maj-soul.com/1/?paipu=<this_part>_a12345678

downloader = MajsoulPaipuDownloader()
await downloader.start(username, password)
try:
    logs = await downloader.download(record_uuid)
    json.dump(logs, sys.stdout, ensure_ascii=False)
finally:
    await downloader.close()

See example.py also

Thanks

https://github.com/MahjongRepository/mahjong_soul_api

https://repo.riichi.moe/library.html#resources-majplus

Metadata

Release files for tensoul 0.1.8

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for tensoul 0.1.8
File Size Uploaded Provenance Actions
tensoul-0.1.8.tar.gz 21.5 kB With provenance Details for tensoul-0.1.8.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for tensoul 0.1.8
File Interpreter ABI Platform Actions
tensoul-0.1.8-py3-none-any.whl Python 3 none any Details for tensoul-0.1.8-py3-none-any.whl

Total release size: 44.7 kB

Release files / tensoul-0.1.8.tar.gz

Download URL tensoul-0.1.8.tar.gz
Size 21.5 kB
Tags Source
SHA-256 checksum
How to use checksums
23c17199dbf02df24d4b2c70febea549d854e03eef68ba3c4798713bc245b75f
BLAKE2b-256 checksum
How to use checksums
047aa780b196d079a50a2f0950a7ea87653c875a69eebf94da1c3605fe893c57
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.9

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2025.

Transparency log

Release files / tensoul-0.1.8-py3-none-any.whl

Download URL tensoul-0.1.8-py3-none-any.whl
Size 23.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
1ee2718c4c981ebfeec3de251b7da9319d16fd2c7f815ba16350f7250dfb99d9
BLAKE2b-256 checksum
How to use checksums
72b176a14da86ab2392373d368f9c85ad59b0ea6a01d86d933f897961f553300
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.9

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2025.

Transparency log

Security for tensoul 0.1.8

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for tensoul-0.1.8.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2025.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page