You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Python中复刻NodeJS的Bytearray转Base64功能?

Python复刻NodeJS的Base64编码逻辑处理bytearray

你之前的操作方向搞反了——NodeJS里的代码是把二进制消息编码成Base64字符串,而不是解码。你之前用base64.b64decode是做解码操作,自然得不到正确结果。

在Python里直接用base64.b64encode处理你的bytearray即可,步骤如下:

  1. 导入base64模块
  2. 对目标bytearray执行Base64编码
  3. 将编码后的bytes对象转成字符串

具体代码示例:

import base64

# 你的目标bytearray
data = bytearray(b"~QF\xc2\x13\x04\xca=`\xc3\xef\xfd\x8bc\xb3\xcf'V\xa3n\xeb\xccX\x97\xb2\xe6\xe0\xca\x12\x85\xac\x8b\xca\xd3hj\xb3\xc0\xedF\x84\x91\x83\t\xfe:\xdd@\xeb?O\xf8\xc2\xf1,\x8d\xfc\x1ag\xddZ\xd0\x14\xcc")

# 复刻NodeJS的逻辑:二进制转Base64字符串
base64_str = base64.b64encode(data).decode('utf-8')
print(base64_str)

执行后得到的结果和NodeJS中Buffer.from(...).toString('base64')的输出完全一致。

另外补充:你之前尝试的utf-8/utf-16-le等文本编码解码之所以失败,是因为这个bytearray本身不是标准文本编码的二进制数据,而是原始二进制流,这类数据本来就不能直接用文本编码解码成可读字符串,转Base64是为了把二进制数据转换成可安全传输/存储的文本格式。

内容的提问来源于stack exchange,提问作者Dome

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.19 09:25:25