Задать вопрос
@Kerm

Python аналог zlib_encode?

Файл принимает PHP с таким вот кодом:

$s_st = unserialize(zlib_decode($s_st));

И поменять этот код нельзя, нужно через Python отправить данные чтобы в PHP они нормально принялись.

Я пробовал в Python вот так:

import zlib
from phpserialize import serialize

file = zlib.compress(serialize(data))


Данные сохраняются в файл и отправляются, данные в переменной date такие же как и в php, я открыл блокнотом файлы сделанные в PHP и Python и они отличаются, в первом текст такой:

xњҐќ[Ом(і¦ЇіҐћDЯ—dО°{X=©‰ њ

В файле созданном на Python такой:

b'x\xda\xa5}\xcb\xb2,)\xae\xe5\xd8\x

Туда, куда отправляю файл созданный на Python функция zlib_decode выдает ошибку zlib_decode(): data error in

В PHP рабочий код, выглядит вот так:

$data = zlib_encode(serialize($data),15);
file_put_contents('st.pak',$data);
  • Вопрос задан
  • 82 просмотра
Подписаться 1 Простой Комментировать
Решения вопроса 1
fox_12
@fox_12 Куратор тега Python
Расставляю биты, управляю заряженными частицами
with open('out.dat', 'wb+') as fil:   # открыть файл для записи как бинарный
    fil.write(file)
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
Или часть кода опущена или data непроинициализирована и содержит случайные данные.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы