Атрибут file
Атрибут file применяется к объекту
FileUpload и содержит файловый объект
загруженного файла. Через этот атрибут можно
читать содержимое файла методами read,
seek, tell и другими. Атрибут
возвращает объект типа BytesIO или
временный файл в зависимости от размера загрузки.
Атрибут доступен только для чтения и не требует
параметров. Обращение к нему выполняется через
точку: upload.file.
Синтаксис
upload.file
Пример
Давайте получим содержимое загруженного файла
через атрибут file и вернём его как текст:
from bottle import Bottle, request
app = Bottle()
@app.route('/upload', method='POST')
def upload():
upload = request.files.get('myfile')
content = upload.file.read()
return content.decode('utf-8')
Результат выполнения кода для файла
'hello.txt' с содержимым 'abcde':
"abcde"
Пример
Давайте прочитаем файл побайтово и посчитаем
его размер через атрибут file:
from bottle import Bottle, request
app = Bottle()
@app.route('/size', method='POST')
def size():
upload = request.files.get('myfile')
data = upload.file.read()
return str(len(data))
Результат выполнения кода для файла
'user.txt' с содержимым 'article':
"7"
Смотрите также
-
класс
FileUpload,
который представляет загруженный файл -
метод
save,
который сохраняет загруженный файл на диск -
атрибут
filename,
который хранит имя загруженного файла -
атрибут
content_type,
который хранит MIME-тип загруженного файла