我正在建立一个django网站,匹配文档,我将文档上传到Minio bucket,因此defaut存储是来自django存储的storages.backends.s3boto3.s3boto3存储,而不是默认的django存储类。这个问题类似于 Why is Django FieldFIle readline() returning the hex version of a text file?
class PostCreateView(LoginRequiredMixin, CreateView):
model = Post
fields = ['title', 'doc_file']
def form_valid(self, form):
form.instance.author = self.request.user
f = form.instance.doc_file.open('r')
text = ''.join(i.decode("utf-8", 'ignore') for i in f.readlines())
form.instance.content = ''.join(
[i if ord(i) < 128 else ' ' for i in text])
return super().form_valid(form)
所以我读了文档,然后把它传递到我的内容字段,这是一个文本字段。所以当我读一个文档时,它都是十六进制的,所以我必须对它进行解码,但即使在那之后,仍然会留下一些奇怪的字符。如果我上传一个.txt文件,它会正确地读取它,但是如果我上传一个doc文件,它会给我很多奇怪的字符,即使在我上传之后也是如此
!# ddddSxSx l SSSSSSSSssss OJQJCJ &p@P ! i4@4NormalCJOJPJQJmH <A@<Default Paragraph Font
GTimes新罗马5SYMBOL3里亚尔;Helvetica 0hKl&;吉隆坡;0" 哦+'0 .+,0
$1TableWordDocumentSummaryInformation(DocumentSummaryInformation8)的根条目
PLZ帮助
编辑: 我知道了如何使用DOCX文件,而pythondocx库仍在尝试了解DOCX
同一问题
How to read AWS S3 stored word document (.doc and .docx) file content using AWS Lambda Python?
我在这里尝试了3票的解决方案,并使用字节io的文件,它没有工作得到坏的zip文件错误 Reading a docx file from s3 bucket with flask results in an AttributeError
目前没有回答
相关问题 更多 >
编程相关推荐