Skip to main content

Python SCALE Codec Library

Project description

Python SCALE Codec

Travis CI Build Status Latest Version Supported Python versions License

Python SCALE Codec Library

Description

Most of the data that the Substrate RPCs output is encoded with the SCALE Codec. This codec is used by the Substrate nodes' internal runtime. In order to get to meaningful data this data will need to be decoded. The Python SCALE Codec Library will specialize in this task.

Documentation

https://polkascan.github.io/py-scale-codec/

Installation

pip install scalecodec

Examples

Decode a SCALE-encoded Compact<Balance>

RuntimeConfiguration().update_type_registry(load_type_registry_preset("default"))
RuntimeConfiguration().update_type_registry(load_type_registry_preset("kusama"))
obj = ScaleDecoder.get_decoder_class('Compact<Balance>', ScaleBytes("0x130080cd103d71bc22"))
obj.decode()
print(obj.value)

Add custom types to type registry

RuntimeConfiguration().update_type_registry(load_type_registry_preset("default"))

custom_types = {
    "types": {
        "MyCustomType": "u32",
        "CustomNextAuthority": {
          "type": "struct",
          "type_mapping": [
             ["AuthorityId", "AuthorityId"],
             ["weight", "AuthorityWeight"]
          ]
        }
    }   
}

RuntimeConfiguration().update_type_registry(custom_types)

Or from a custom JSON file

RuntimeConfiguration().update_type_registry(load_type_registry_preset("default"))
RuntimeConfiguration().update_type_registry(load_type_registry_file("/path/to/type_registry.json"))

License

https://github.com/polkascan/py-scale-codec/blob/master/LICENSE

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

scalecodec-0.9.33.tar.gz (211.8 kB view details)

Uploaded Source

Built Distribution

scalecodec-0.9.33-py3-none-any.whl (49.4 kB view details)

Uploaded Python 3

File details

Details for the file scalecodec-0.9.33.tar.gz.

File metadata

  • Download URL: scalecodec-0.9.33.tar.gz
  • Upload date:
  • Size: 211.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.45.0 CPython/3.8.2

File hashes

Hashes for scalecodec-0.9.33.tar.gz
Algorithm Hash digest
SHA256 7bb8cd2db8d096b7c024e7386afc50a4f2cec88a052929e586cd37324fd7aa74
MD5 4aacce00fd287da42428abd1c3f6fbde
BLAKE2b-256 f670fd9a52bfc1549622c01f1e2ceb36062f82be2eac788632a1f66dbf31315e

See more details on using hashes here.

File details

Details for the file scalecodec-0.9.33-py3-none-any.whl.

File metadata

  • Download URL: scalecodec-0.9.33-py3-none-any.whl
  • Upload date:
  • Size: 49.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.45.0 CPython/3.8.2

File hashes

Hashes for scalecodec-0.9.33-py3-none-any.whl
Algorithm Hash digest
SHA256 03e68a233900afeeec0a136c3eedb4bb1543ea0fd16798b7c255198084e5b669
MD5 00bb2ce6679865fcac9d112ceaecdfeb
BLAKE2b-256 57e90fd1ced999921873e3199f9db0704f8174048a7327e4a726ae2cc9e5ab8b

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page