Как в discord.py, flask-socketio и flask отправить файл на сервер из сокета прослушивания?Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Как в discord.py, flask-socketio и flask отправить файл на сервер из сокета прослушивания?

Сообщение Anonymous »

Я уже пробовал использовать различные методы с асинхронными функциями, задачами планирования и циклами событий. Я не знаю, что делать. Код ниже — это сокет, который получает загруженный файл и отправляет его в Discord. Если вам нужна дополнительная информация/контекст, я могу опубликовать полный код Python для моего проекта.
@socketio.on('upload')
def handle_upload(data):
try:
random_id = str(random.randint(1000000000, 9999999999))
username = "skyrocketer"
file = data['file']
filename = data['filename']
file_path = os.getcwd() + '/static/' + f'{random_id}-' + filename

socketio.emit('progress', {'percent': '25'})

with sqlite3.connect('ddrv.db') as conn:
cursor = conn.cursor()
cursor.execute("INSERT INTO files (user, file_id, file_name) VALUES (?, ?, ?)", (username, random_id, filename))
conn.commit()

socketio.emit('progress', {'percent': '50'})

with open(file_path, 'wb') as f:
f.write(file)
socketio.emit('progress', {'percent': '75'})

channel = bot.get_channel("channel id")
with open(file_path, 'rb') as f:
discord_file = discord.File(f)
channel.send(file=discord_file)

socketio.emit('progress', {'percent': '100'})

except Exception as e:
print(f"Error handling upload: {e}")
socketio.emit('progress', {'percent': 'failed'})


Подробнее здесь: https://stackoverflow.com/questions/793 ... server-fro
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»