当我 运行 我的网站时,背景图片出现 404 错误
I get 404 error on the background image when I run my website
我创建了一个 flask 服务器实例并上传了一个机器学习模型,这样我就可以发送一个包含图片的 post 请求并将结果返回到 JSON 文件中,我对其进行了测试在一个网站上包含两条路线(我使用 HTML 构建页面)并且它工作正常,我想向网站添加背景图片但是当我 运行 我的 CMD 中的 python 文件。非常感谢任何帮助。
This is the HTML code for one of the webpages
<!DOCTYPE html>
<html>
<head>
<title>prediction</title>
</head>
<style>
h3 {color:rgb(138, 34, 34); font-size: 25px;}
</style>
<body style="background-image:url(a.jpg);background-size: 100%; color: white; position: absolute; top: 15%; left: 45%; font-size: 16px; line-height: 1.4;">
<center>
<h1>Your prediction is:</h1>
<h3>{{data}}</h3>
</center>
</body>
</html>
And this is the code for the flask server
from flask import Flask, render_template, request, jsonify
import cv2
import numpy as np
import pandas as pd
import tensorflow
from tensorflow import keras
from tensorflow.python.keras import backend as k
app = Flask(__name__)
model = tensorflow.keras.models.load_model('model.h5')
@app.route('/')
def index():
return render_template("index.html", data="hey")
@app.route("/prediction", methods=["POST"])
def prediction():
predd="Benign"
img = request.files['img']
img.save("img.jpg")
image = cv2.imread("img.jpg")
image = cv2.resize(image, (224,224))
image = np.reshape(image, (1,224,224,3))
pred = model.predict(image)
preddd = pred > 0.5
pre= pred*100
s= "%"
if(preddd):
predd="Malignant"
print("prediction is:")
print(predd)
print("percentage is:")
print(str(pre) +s)
print(" ")
#return jsonify({"prediction is": predd,})
return render_template("prediction.html", data=predd)
if __name__ == "__main__":
app.run(debug=False,host='192.168.1.111',port=5000)
Here's a screenshot from my CMD
确保图像存在于 static
子目录中,因此路径为:
static/a.jpg
验证可以直接在 http://192.168.1.111/static/a.jpg
加载
然后更改 CSS 以支持此:
background-image:url("/static/a.jpg")
另一种选择:添加以下路线即可。
@app.route("/a.jpg", methods=["GET"])
def image():
return send_from_directory('path/to/image', 'a.jpg')
或者如果名称 a.jpg
不固定,请执行以下操作:
@app.route("/<name>", methods=["GET"])
def image(name):
return send_from_directory('path/to/image', name)
我创建了一个 flask 服务器实例并上传了一个机器学习模型,这样我就可以发送一个包含图片的 post 请求并将结果返回到 JSON 文件中,我对其进行了测试在一个网站上包含两条路线(我使用 HTML 构建页面)并且它工作正常,我想向网站添加背景图片但是当我 运行 我的 CMD 中的 python 文件。非常感谢任何帮助。
This is the HTML code for one of the webpages
<!DOCTYPE html>
<html>
<head>
<title>prediction</title>
</head>
<style>
h3 {color:rgb(138, 34, 34); font-size: 25px;}
</style>
<body style="background-image:url(a.jpg);background-size: 100%; color: white; position: absolute; top: 15%; left: 45%; font-size: 16px; line-height: 1.4;">
<center>
<h1>Your prediction is:</h1>
<h3>{{data}}</h3>
</center>
</body>
</html>
And this is the code for the flask server
from flask import Flask, render_template, request, jsonify
import cv2
import numpy as np
import pandas as pd
import tensorflow
from tensorflow import keras
from tensorflow.python.keras import backend as k
app = Flask(__name__)
model = tensorflow.keras.models.load_model('model.h5')
@app.route('/')
def index():
return render_template("index.html", data="hey")
@app.route("/prediction", methods=["POST"])
def prediction():
predd="Benign"
img = request.files['img']
img.save("img.jpg")
image = cv2.imread("img.jpg")
image = cv2.resize(image, (224,224))
image = np.reshape(image, (1,224,224,3))
pred = model.predict(image)
preddd = pred > 0.5
pre= pred*100
s= "%"
if(preddd):
predd="Malignant"
print("prediction is:")
print(predd)
print("percentage is:")
print(str(pre) +s)
print(" ")
#return jsonify({"prediction is": predd,})
return render_template("prediction.html", data=predd)
if __name__ == "__main__":
app.run(debug=False,host='192.168.1.111',port=5000)
Here's a screenshot from my CMD
确保图像存在于 static
子目录中,因此路径为:
static/a.jpg
验证可以直接在 http://192.168.1.111/static/a.jpg
然后更改 CSS 以支持此:
background-image:url("/static/a.jpg")
另一种选择:添加以下路线即可。
@app.route("/a.jpg", methods=["GET"])
def image():
return send_from_directory('path/to/image', 'a.jpg')
或者如果名称 a.jpg
不固定,请执行以下操作:
@app.route("/<name>", methods=["GET"])
def image(name):
return send_from_directory('path/to/image', name)