Дружище, я сам задался этой проблемой увидел твой пост и решил её вот таким способом : код ниже.
То есть для достижения цели тебе нужнен и телеграм бот и дискорд бот, работает как часы)
@dp.message_handler(content_types=types.ContentType.PHOTO)
async def process_photo(message: types.Message):
user_id = message.from_user.id
name_image = f"12345.jpg"
# получаю объект фотки
photo = message.photo[-1]
# скачиваю фото в папку со скриптом
await photo.download(name_image)
# использую aiohttp вместо requests так как бот исинхронный, советую забыть тут о requests.
async with aiohttp.ClientSession() as session:
# через апи дискорда отправляю на канал CHANNEL_ID скачанное фото. вставляю токен от дискорд бота
async with session.post(f'https://discord.com/api/v9/channels/{CHANNEL_ID}/messages',
headers={'Authorization': f'Bot {TOKEN_discord}'},
data={'content': 'Фото', 'file': open(name_image, 'rb')}) as response:
data = await response.json()
# теперь переменная file_url содержит полноценную ссылку для предпросмотра фотографии, и её принимает любое API
file_url = data['attachments'][0]['url']
# отправляем ссылку загруженной фотографии
await message.reply(f"{file_url}")