用于生成雪花的 Python 库。
项目描述
雪花工具
用于生成 Discord、Twitter、Instagram 和自定义雪花的 Python 库。
雪花是资源的唯一标识符,其中包括创建此类雪花的时间戳等。Twitter、Discord 或 Instagram 使用雪花。它们是由 Twitter 在 2010 年创建的。
由 TheMultii (c) 2022 年至今开发
安装
# Linux/macOS
python3 -m pip install -U snowflake-util
# Windows
py -3 -m pip install -U snowflake-util
使用方法示例
创建自定义雪花
from datetime import datetime
import snowflake
config = snowflake.SnowflakeConfig(
epoch=snowflake.Epoch.discord, # or Unix timestamp in milliseconds with maximum length of 13 digits.
leading_bit=False,
timestamp_length=42,
param1_length=5,
param2_length=5,
sequence_length=12
)
SnowClass = snowflake.Snowflake(config)
custom_snowflake = SnowClass.generate_snowflake(param1=11, param2=3, sequence=753)
custom_snowflake_TS = SnowClass.generate_snowflake(param1=14, param2=9, sequence=357, date=datetime(2021, 8, 8, 8, 8, 0, 0))
print(custom_snowflake, SnowClass.parse_snowflake(custom_snowflake))
print(custom_snowflake_TS, SnowClass.parse_snowflake(custom_snowflake_TS))
创建 Discord 雪花
SnowClass = snowflake.Snowflake()
discord_snowflake = SnowflakeClass.generate_discord_snowflake(worker=5, process=5, sequence=222, date=datetime(2022, 1, 1, 16, 15, 0, 0))
print(y, SnowflakeClass.parse_discord_snowflake(discord_snowflake))
创建 Twitter 雪花
SnowClass = snowflake.Snowflake()
twitter_snowflake = SnowflakeClass.generate_twitter_snowflake(machine=333, sequence=666, date=datetime(2022, 1, 1, 16, 15, 0, 0))
print(y, SnowflakeClass.parse_twitter_snowflake(twitter_snowflake))
创建 Instagram 雪花
SnowClass = snowflake.Snowflake()
instagram_snowflake = SnowflakeClass.generate_instagram_snowflake(shard=1605, sequence=420, date=datetime(2020, 6, 11, 8 ,13))
print(y, SnowflakeClass.parse_instagram_snowflake(instagram_snowflake))
重要信息:
-
生成任何雪花不需要将日期作为参数发送 - 雪花将根据当前时间生成。
-
snowflake.SnowflakeConfig如果您想使用任何现成的模板来生成/阅读雪花(Twitter、Discord、Instagram),则不需要 -
Snowflake.set_config()您可以使用和方法编辑和读取当前配置设置Snowflake.get_config()。 -
所有方法都记录在代码中。
-
Twitter使用
leading_bit它来生成雪花。 -
对于自定义配置,总和
leading_bit, timestamp_length, param1_length, param2_length, sequence_length必须正好是 64。 -
雪花只能为设定的纪元之后的日期生成。
-
每个雪花必须有一个 64 位的表示。
参考
执照
麻省理工学院
项目详情
下载文件
下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。
源分布
snowflake-util-1.0.0b4.tar.gz
(8.0 kB
查看哈希)
内置分布
snowflake_util-1.0.0b4-py3-none-any.whl
(10.0 kB
查看哈希)
关
snowflake_util- 1.0.0b4 -py3-none-any.whl 的哈希值
| 算法 | 哈希摘要 | |
|---|---|---|
| SHA256 | a184ebb466e88e0cf02a69f7987abce103a13749b3438bc2651e36c3bd6fe0f2 |
|
| MD5 | 1e3d3dbdf90ea4e6d3a33a25f7c132e0 |
|
| 布莱克2-256 | 6be55370c08b9871eebf9709c0b431825dd97e75199e0ccd7553c8dd4b79237f |