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.34.tar.gz (211.8 kB view details)

Uploaded Source

Built Distribution

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

Uploaded Python 3

File details

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

File metadata

  • Download URL: scalecodec-0.9.34.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.34.tar.gz
Algorithm Hash digest
SHA256 6ab41d297f2318ec2422a6efb206b8ce904d88e490c8e717eeec2207b13f328e
MD5 0a4aa68b64194e6fe6e83a5cc0d1a5ac
BLAKE2b-256 2b6a6a667252a21c7564bc449cbf376686fa82bd9d97ff20f9588c48ca4db66c

See more details on using hashes here.

File details

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

File metadata

  • Download URL: scalecodec-0.9.34-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.34-py3-none-any.whl
Algorithm Hash digest
SHA256 2b6798ee6a597d23c475828c5ce253473dc8a3760a73acf107c09df21efc08e1
MD5 47eb05817a32f567226d98aef2abca7e
BLAKE2b-256 22d716ce8c3d2196db8d5744b5a7b1a0ca3c7ee9716561b53de186b36c657ff4

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