raycst插件脚本

377 阅读1分钟

从UUID中提取创建时间的Python脚本 raycst插件脚本

#!/usr/bin/env python3

# Required parameters:
# @raycast.schemaVersion 1
# @raycast.title uuid-time
# @raycast.mode fullOutput

# Optional parameters:
# @raycast.icon 🤖
# @raycast.argument1 { "type": "text", "placeholder": "请输入UUID" }

# Documentation:
# @raycast.description 提取UUID中的时间信息

import sys
import uuid
import datetime
import pytz

def get_time_from_uuid(uuid_str):
    uuid_obj = uuid.UUID(uuid_str)
    time = (uuid_obj.time - 0x01b21dd213814000) / 10000 # 将100纳秒单位的时间戳转换为毫秒
    utc_time = datetime.datetime.fromtimestamp(time/1000.0, tz=pytz.utc) # 将毫秒转换为秒并转换为UTC日期时间格式
    local_time = utc_time.astimezone(pytz.timezone('Asia/Shanghai')) # 将UTC时间转换为东八时区时间
    return local_time

# 使用示例
uuid_str = sys.argv[1]
time = get_time_from_uuid(uuid_str)
print(time.strftime("%Y-%m-%d %H:%M:%S %Z%z"))