Steam | 验证短信乱码

在用Steam的App发验证信息的时候遇到了乱码,在知乎上找到了解决方案,记一下。

奈豆Nazuki - Steam 令牌手机验证器验证码短信乱码

原理

原理就是字符集不一致,文中指出了Steam的验证短信使用的是utf-16be编码,直接转一下就能看见验证码了。

解决方案

1
2
3
4
# 替换成自己乱码的短信内容
# 如果出错,可以删除末位字符后再运行
s = "子䥎嵃潮晩牭⁡摤楮朠愠却敡洠䅵瑨敮瑩捡瑯爠睩瑨‹㐹㤸"
print(s.encode("utf-16be"))

PS

另外,评论区指出,在App里将语言改成简中再发一遍就能解决,我还没试,姑且记下来。

有时最后一个字符是,没法转,把这个字符删掉再转就行了。