I am trying to send a request including a rtf file and process it in Flask.
In my python script, I used the striprtf lib to read this file and then process it.
rtf = Path(file_path).read_text() text = rtf_to_text(rtf)
Now I want to wrap this script into flask. I got error said: TypeError: expected string or bytes-like object. How can I read this rtf file in the flask?
file = request.files['file'] text = rtf_to_text(file)
Advertisement
Answer
Try the read method of file, which is a werkzeug.datastructures.FileStorage object.
You’ll then need to decode this to provide rtf_to_text with the string it expects.
file = request.files['file']
as_string = file.read().decode('utf-8')
text = rtf_to_text(as_string)