1
0
mirror of https://github.com/fumiama/NanoBot.git synced 2026-06-08 12:10:23 +08:00

optimize: media print

This commit is contained in:
源文雨
2023-11-22 22:31:41 +09:00
parent 92a7eb4678
commit 0f21f89ad0
2 changed files with 48 additions and 6 deletions

View File

@@ -5,6 +5,7 @@ import (
"encoding/hex"
"hash/crc64"
"net/url"
"regexp"
"runtime"
"strings"
"unsafe"
@@ -146,3 +147,19 @@ func DigestID(id string) uint64 {
}
return crc64.Checksum(b, crc64.MakeTable(crc64.ECMA))
}
const mediafilebed = `https://multimedia.nt.qq.com.cn`
var mediafileinfourlre = regexp.MustCompile(`/download\?appid=\d+&fileid=[0-9A-Za-z-_]+&rkey=[0-9A-Za-z-_]+`)
// mediaURL 从 fileinfo 得到 URL
func mediaURL(fileinfo string) (string, error) {
sb := strings.Builder{}
data, err := base64.StdEncoding.DecodeString(fileinfo)
if err != nil {
return "", err
}
sb.WriteString(mediafilebed)
sb.Write(mediafileinfourlre.Find(data))
return sb.String(), nil
}