用python编写一个网站,可以上传图片文件并将文件保存到服务器目录下
时间: 2024-02-01 16:04:18 浏览: 102
一个用python写的小网站可以自己使用
好的,我可以给你提供一个简单的 Python Flask 框架的代码示例,用于上传图片文件并将文件保存到服务器目录下。
首先,你需要安装 Flask 和 Werkzeug 库。可以使用以下命令进行安装:
```
pip install Flask Werkzeug
```
接下来,创建一个名为 `app.py` 的 Python 文件,输入以下代码:
```python
from flask import Flask, request, redirect, url_for
from werkzeug.utils import secure_filename
import os
app = Flask(__name__)
app.config['UPLOAD_FOLDER'] = '/path/to/upload/folder' # 设置上传文件保存路径
app.config['ALLOWED_EXTENSIONS'] = {'png', 'jpg', 'jpeg', 'gif'} # 设置允许上传的文件类型
def allowed_file(filename):
return '.' in filename and \
filename.rsplit('.', 1)[1].lower() in app.config['ALLOWED_EXTENSIONS']
@app.route('/', methods=['GET', 'POST'])
def upload_file():
if request.method == 'POST':
file = request.files['file']
if file and allowed_file(file.filename):
filename = secure_filename(file.filename)
file.save(os.path.join(app.config['UPLOAD_FOLDER'], filename))
return redirect(url_for('uploaded_file', filename=filename))
return '''
<!doctype html>
<html>
<head>
<title>Upload new File</title>
</head>
<body>
<h1>Upload new File</h1>
<form method=post enctype=multipart/form-data>
<input type=file name=file>
<input type=submit value=Upload>
</form>
</body>
</html>
'''
@app.route('/uploads/<filename>')
def uploaded_file(filename):
return f'successfully uploaded {filename}'
if __name__ == '__main__':
app.run(debug=True)
```
在代码中,`UPLOAD_FOLDER` 变量指定了上传文件保存路径,`ALLOWED_EXTENSIONS` 变量指定了允许上传的文件类型。`allowed_file` 函数用于检查文件类型是否符合要求。`upload_file` 函数用于处理上传文件的请求,将文件保存到指定路径,并返回上传成功的提示。`uploaded_file` 函数用于显示上传成功的文件名。
在运行代码前,请将 `UPLOAD_FOLDER` 修改为你想要保存文件的服务器目录路径,然后在终端中使用以下命令启动 Flask 应用:
```
python app.py
```
接下来就可以在浏览器中访问 http://localhost:5000/ ,上传图片文件并查看上传结果了。
阅读全文