| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546 |
- from aiogram.types import message
- from aiogram.types.message import Message
- from logzero import logger
- import logging
- from aiogram import Bot, Dispatcher, executor, types
- from config import API_TOKEN
- # Configure logging
- logging.basicConfig(level=logging.INFO)
- # Initialize bot and dispatcher
- bot = Bot(token=API_TOKEN)
- dp = Dispatcher(bot)
- @dp.message_handler(commands=['start'])
- async def process_start_command(message: types.Message):
- await message.reply("Hello!\n\n\
- Send me a link paper from arxiv.org and \
- I'll send you back arxiv-vanity.com link with paper!\n\
- Or add me to chat and I'll be watching the arxiv link and \
- reply to them with fancy axiv-vanity links.")
- @dp.message_handler(commands=['help'])
- async def process_help_command(message: types.Message):
- await message.reply("Напиши мне что-нибудь, и я отпрпавлю этот текст тебе в ответ!")
- # @dp.message_handler()
- # async def echo_message(message: types.Message):
- # await bot.send_message(message.from_user.id, message.text)
- @dp.message_handler(regexp='arxiv.org/\s*([^\s]*)')
- async def cats(message: types.Message):
- id_paper = (message.text
- .replace('/abs', '')
- .replace('/pdf', '')
- .replace('.pdf', '')
- .split('/')[-1]
- .split(' ')[0])
- await message.reply(f'https://arxiv-vanity.com/papers/{id_paper}')
- if __name__ == "__main__":
- executor.start_polling(dp, skip_updates=True)
|