Итак, моя проблема довольно проста
Я хочу выполнить следующую команду оболочки в Django 2.1.7
libreoffice --headless --convert-to "txt:Text (encoded):UTF8" test.doc
Подробнее.
Я буду загружать файл Doc и хочу преобразовать его в txt. Я думал, могу ли я использовать libreoffice, чтобы сделать это.
Мой сервер - Ubuntu 18.04 с Python 3.6.7
Я хотел бы загрузить файл в Media Root, а затем я хотел бы начать преобразование.
До сих пор я пытался сделать следующее:
@api_view(['POST'])
def convertfiledoc(request):
file = request.FILES['file']
fs = FileSystemStorage()
filename = fs.save(file.name, file)
uploaded_file_url = 'media/'
r = subprocess.call("libreoffice --headless --convert-to" +"txt:Text (encoded):UTF8" + "test.doc ")
print(r)
return Response(data={"message": uploaded_file_url}, status=status.HTTP_200_OK)
Ошибка выглядит следующим образом
FileNotFoundError: [Errno 2] No such file or directory: 'libreoffice --headless --convert-totxt:Text (encoded):UTF8test.doc ': 'libreoffice --headless --convert-totxt:Text (encoded):UTF8test.doc '
Я знаю, что написанная мной функция не завершена, но я пытался сделать это, чтобы проверить, работает ли она правильно.
Я даже пытался жестко закодировать файл, но безуспешно.