以下是一个Python3脚本,可以批量计算文件的ed2k链接:

import os
import subprocess
import hashlib

# 设置rhash路径
rhash_path = "/usr/bin/rhash"

# 设置文件所在目录
dir_path = "/path/to/directory"

# 获取目录下所有文件
files = os.listdir(dir_path)

for file in files:
    # 计算文件的ed2k_hash和ed2k_aich
    result = subprocess.run([rhash_path, "--ed2k", os.path.join(dir_path, file)], capture_output=True)
    output = result.stdout.decode("utf-8")
    parts = output.split("\t")

    # 获取文件名、文件大小和ed2k_hash
    file_name = file
    file_size = os.path.getsize(os.path.join(dir_path, file))
    ed2k_hash = parts[1]

    # 计算ed2k_aich
    hasher = hashlib.sha1()
    hasher.update(ed2k_hash.encode("utf-8"))
    ed2k_aich = hasher.hexdigest()

    # 生成ed2k链接
    ed2k_link = "ed2k://|file|%s|%d|%s|h=%s|/" % (file_name, file_size, ed2k_hash, ed2k_aich)

    # 输出结果
    print(ed2k_link)

将上述代码保存为一个.py文件并执行,即可批量计算文件的ed2k链接。其中,需要根据实际情况修改rhash路径和文件所在目录。

python3通过rhash批量计算文件ed2k格式为ed2kfile文件名文件大小ed2k_hashh=ed2k_aich

原文地址: https://www.cveoy.top/t/topic/bbNM 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录