load_dotenv(find_dotenv())
@csrf_exempt
def IndexView(request):
if request.method == 'GET':
return HttpResponse("get method not allowed")
if request.method == 'POST':
jsonRequest = request.body
jsonRequest = json.loads(jsonRequest)
jsonStickers = jsonRequest["stickers"]
ready_stickers = []
for i in range(len(jsonRequest["stickers"])):
background = Path("assets", "blanks", jsonStickers[i]["background"] + ".png")
emoji = Path("assets", "blanks", jsonStickers[i]["emoji"] + ".png")
text = Path("assets", "blanks", jsonStickers[i]["text"] + ".png")
background_img = Image.open(background)
emoji_img = Image.open(emoji)
text_img = Image.open(text)
background_img.paste(emoji_img, (0, 0), emoji_img)
background_img.paste(text_img, (0, 0), text_img)
background_name = ''.join(secrets.choice(string.ascii_letters + string.digits) for x in range(240))
save_path = Path("assets", "ready", background_name + ".png")
background_img.save(save_path)
sticker_obj = InputSticker(request.scheme + "://" + request.get_host() + "/" + str(save_path))
ready_stickers.append(sticker_obj)
stickerset_name = ''.join(secrets.choice(string.ascii_letters + string.digits) for x in range(64))
isSuccess = CreateNewStickerSet(user_id=int(os.getenv("USER_ID")), name=stickerset_name, title=os.getenv("TITLE"), stickers=ready_stickers, sticker_format="static")
return HttpResponse(isSuccess)
Написал такой код, для создания стикер пака используя aiogram и джанго. Отправляю запрос через postman и получаю логичный ответ
('user_id', 915310499)('name', 'eJCtUlQ62Mxmin6u5phj8agymm4NgDxqSlv1wPMzP8dPn7Jjacmh6qoleReTm5GV')('title',
'StickerSet_Django')('stickers',
[InputSticker(sticker='http://127.0.0.1:8000/assets\\ready\\N7jOlTZmkfRhLsLDRrf6gul1RXOTCPt1BSF2b3OLzsfHLGEZ61EQFUEcWqX7vS2lCyx9KtifmAaz6LLMZa61VySELtsmuZtsKgHXVkKCzR7v8e4XYcFAa4Pq9v2hVlajSeDUJkXzGRWdaSFQG3QNUXjLOubOb7J77uFLCPNCs02sR6VUxtnPCuRicdeAbWmAJFcGbZuQX2jDuoKDOxKeJ04MqJSGdgdcSPSpYXKIxYiGlxRb.png',
emoji_list=['', '', ''], mask_position=None, keywords=None),
InputSticker(sticker='http://127.0.0.1:8000/assets\\ready\\NGcvUIklEsVGrXO88EqPG9VEHUhf8TZHLRUMXzu3hCdwuTVHqz2Kmlz0tfXnZZKB7BHVylc9w3FRZg6SW9Qk3FBnfRl7bgl9MBuWVRM9WFW5SvfAAvi9Jq8k1B36iGS8heeNlL1zTex8zYjBUKeDyDUj5yuDds1icbrWhq3EPV7cyRj8N9hU5WMTxfzclQhuIajaPmOyZTmQeAhprWfnv3HelJWCe6YGJfI3DjIf9bkwaIiM.png',
emoji_list=['', '', ''], mask_position=None, keywords=None),
InputSticker(sticker='http://127.0.0.1:8000/assets\\ready\\PNqoefCtCv0MtFr5jTPc08eNfDx2ez5lUm0KlElkjZ6lZYUpabAe4GvTC47Li43OTDpoObJGvghWwrvvdstdw9Z8yivtkD8wpg2g7gEEnHT1yHk2WAOpH8kjYFzPkkVlWQ0aZvACuCTOmKe8SGcjkCXczhXFZGxSPfM7V0CuUu5nKd7UF7Ag1baYJ3aU3f4b62wpckcuGlKuCQPfSopE4P4p9pEmAs2s7N3Mh5LmSuaQIxul.png',
emoji_list=['', '', ''], mask_position=None, keywords=None)])('sticker_format', 'static')('sticker_type',
None)('needs_repainting', None)
Копирую name (т.е. eJCtUlQ62Mxmin6u5phj8agymm4NgDxqSlv1wPMzP8dPn7Jjacmh6qoleReTm5GV) и пытаюсь найти этот стикерпак через t.me/addstickers/eJCtUlQ62Mxmin6u5phj8agymm4NgDxqSlv1wPMzP8dPn7Jjacmh6qoleReTm5GV и получаю верную страницу (кроме того что имя стикерпака не верное, должно быть StickerSet_Django) и при поптыке добавить этот стикерпак в тг получаю вот это:
Помогите, как быть и что делать
pip freeze =>
aiofiles==23.1.0
aiogram @ https://github.com/aiogram/aiogram/archive/refs/heads/dev-3.x.zip#sha256=b9cb427ff06e70c37e7331e24a10a6aefee55a8624825780482e78b54c269c15
aiohttp==3.8.4
aiosignal==1.3.1
asgiref==3.7.2
async-timeout==4.0.2
attrs==23.1.0
Babel==2.9.1
certifi==2023.5.7
charset-normalizer==3.1.0
Django==4.2.2
djangorestframework==3.14.0
frozenlist==1.3.3
idna==3.4
magic-filter==1.0.9
multidict==6.0.4
Pillow==9.5.0
pydantic==1.10.9
python-dotenv==1.0.0
pytz==2023.3
sqlparse==0.4.4
typing_extensions==4.6.3
tzdata==2023.3
yarl==1.9.2
Python = 3.10.9