Сломанный вывод requests в python

Всем здоровья, комрады! На досуге следующий кейс: Имеется Linux Mint 24 Python 3.12.3

Пишу код для взаимодействия с API. Использую всего две либы в проекте (скачанные) : requests и bs4. Создаю venv чтобы не захламлять глобальное окружение. Requests выдает сломанный response (код 200). Запрос проходит, получаю ответ (ответ в JSON) в консоль пишет всякую кадабру. Скрин приложу. Если прогоняю через глобальный интерпретатор то все ок. Очевидно что чего то не хватает, но я не могу нащупать где. Скорее всего, где то сломалась либа. Подскажите как добиться адекватного ответа на запрос.

Код:

import requests
import json
import os
import time
from datetime import datetime 

base_dir = os.path.dirname(__file__)
func_dir = os.path.join(base_dir, 'functions')
sys.path.append(func_dir)

import api

AVAILABLE_TAPS = 6000

def tap (count : int, AVAILABLE_TAPS) :
    time_stamp = round(time.time())
    payload = {"count":count,
               "availableTaps":AVAILABLE_TAPS,
               "timestamp":time_stamp}
    opt_res = requests.options(url=api.tap, headers=api.tap_opt_headers)
    print('[OPTIONS] Code : ', opt_res.status_code)
    post_res = requests.post(url=api.tap, headers=api.tap_post_headers, json=payload)
    print('[TAP] Code : ', post_res.status_code)

    return json.loads(post_res.text)

def sync () :
    opt_res = requests.get(url=api.sync, headers=api.opt_sync_headers)
    print('[OPTIONS] Code : ', opt_res.status_code)
    post_res = requests.post(url=api.sync, headers = api.post_sync_headers)
    print('[SYNC] Code :', post_res.status_code)
    data = json.loads(post_res.text)
    #last_sync = data['clickerUser']["lastSyncUpdate"]
    #print("[SYNC] Last Sync : ", datetime.fromtimestamp(last_sync))


    return data['clickerUser']


def main() :
    data = sync()
    coins = round(data['balanceCoins'])
    last_sync = data["lastSyncUpdate"]
    level = data['level']
    av_taps = data['availableTaps']
    print(av_taps)
    #AVAILABLE_TAPS = av_taps
    earnPerTap = data['earnPerTap']
    tapsRecover = data['tapsRecoverPerSec']
    maxTaps = data['maxTaps']
    #print(AVAILABLE_TAPS)
    print(coins)
    #tap(1, AVAILABLE_TAPS)
    time.sleep(3600)


if __name__ == "__main__":
    main()

Вывод при запуске из venv (https://imgur.com/a/0dIIN6U)

Вывод при запуске из глобального окружения юзера:

[OPTIONS] Code :  404
[SYNC] Code : 200
6500
110056206

Ответы (1 шт):

Автор решения: Freddie

Решение:

pip install brotli в venv
→ Ссылка