medata.py 1.1 KB

1234567891011121314151617181920
  1. import base64
  2. from pydantic import BaseModel, ValidationError
  3. def find_base64_truncation(encoded_data):
  4. # 将输入字符串划分为4字符的组
  5. for i in range(0, len(encoded_data), 4):
  6. chunk = encoded_data[i:i+4]
  7. try:
  8. # 尝试解码当前4字符组
  9. res = base64.b64decode(chunk)
  10. print(f"解码成功,截断点位于索引 {i}, 字符组为 '{chunk}', 解码结果为: {res.decode()}")
  11. except Exception as e:
  12. # 如果解码失败,打印出错误位置和可能的截断点
  13. print(f"可能的截断点位于索引 {i}, 字符组为 '{chunk}', 错误信息: {e}")
  14. break # 假设你有一个 Base64 编码的字符串
  15. encoded_data = "gAAAAABmK1YeWb24sQcKaJVtnmeoexGo3-W8dJlNEFrLZzBhtpZPUglAkG-VNzMBnLiY14vRuOORZen24-I0wVytnbNa61LO0UY2bZqF4k6vugsPGCgPUT5vvvm7hYlG3FcGwTG1zNM6EMfGelC2vS-LTFjByMwQ8AB_YjLtkRFaJ4nHEgUexow="
  16. find_base64_truncation(encoded_data=encoded_data)
  17. # Base64 解码
  18. # decoded_data = base64.b64decode(encoded_data)
  19. # print(decoded_data)