我正在开发一个项目,用户在创建订单时上传文件。该文件通过AJAX发送到view
,然后识别出返回的单词数量。
为此,我想使用textract
模块。问题是我没有找到如何将内存上传文件添加为textract.process(filepath)
参数的方法,因为它需要filepath
,而不是file
。
所以我想我应该将此文件临时保存在驱动器上,并将此文件的路径发送到process
函数。
@csrf_exempt
def ajax_file_word_count(request):
from SolutionsForLanguages import word_counter
file = request.FILES.get('file')
count = word_counter.count_words(file)
return JsonResponse({'word_count': count})
我该怎么做才能在计算单词后立即删除文件?
答案 0 :(得分:0)
查看pythons tempfile模块。您可以使用它来创建临时文件并使用该文件对象路径属性,获取文件路径,然后将其传递给您的预期函数。我想它应该可以工作然后你可以删除临时文件。