Tishka17 / sulguk

HTML to telegram entities converter

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Unexpected behavior in aiogram_middleware.py -> _transform_text_caption

bralbral opened this issue · comments

commented

Structure from readme section is used in code below.


import asyncio
import logging
import sys

from aiogram import Bot, Dispatcher, types
from sulguk import AiogramSulgukMiddleware, SULGUK_PARSE_MODE

CHAT_ID = 123345678
BOT_TOKEN = "XXXXXXXXXXXXXXXXXXXXXXXXXXXXX"

dp = Dispatcher()


@dp.message()
async def echo_handler(message: types.Message, bot: Bot) -> None:
    await bot.copy_message(
        from_chat_id=message.chat.id, chat_id=CHAT_ID, message_id=message.message_id
    )


async def main() -> None:
    bot = Bot(BOT_TOKEN, parse_mode=SULGUK_PARSE_MODE)
    
    # if comment row below - it works.
    bot.session.middleware(AiogramSulgukMiddleware())

    await dp.start_polling(bot)


if __name__ == "__main__":
    logging.basicConfig(level=logging.INFO, stream=sys.stdout)
    asyncio.run(main())

Error log:

...
  File "/home/bral/PycharmProjects/sulguk_issue/venv/lib/python3.11/site-packages/sulguk/wrapper.py", line 17, in transform_html
    transformer.feed(raw_html)
  File "/usr/lib/python3.11/html/parser.py", line 109, in feed
    self.rawdata = self.rawdata + data
                   ~~~~~~~~~~~~~^~~~~~
TypeError: can only concatenate str (not "NoneType") to str
...

Link to code is sulguk repo.

This reaction applied to all messages.