Spaces:
Sleeping
Sleeping
from flask import Flask, request, render_template | |
import numpy as np | |
import pickle | |
import warnings | |
warnings.filterwarnings('ignore') | |
from feature import FeatureExtraction | |
with open("model.pkl", "rb") as file: | |
gbc = pickle.load(file) | |
app = Flask(__name__) | |
def index(): | |
result = None | |
result_class = None | |
url = None | |
if request.method == 'POST': | |
url = request.form['url'] | |
obj = FeatureExtraction(url) | |
x = np.array(obj.getFeaturesList()).reshape(1, 30) | |
y_pred = gbc.predict(x)[0] | |
y_pro_phishing = gbc.predict_proba(x)[0, 0] | |
y_pro_non_phishing = gbc.predict_proba(x)[0, 1] | |
if y_pred == 1: | |
result = "It is {0:.2f}% safe to go".format(y_pro_non_phishing * 100) | |
result_class = "safe" | |
else: | |
result = "It is {0:.2f}% phishing".format(y_pro_phishing * 100) | |
result_class = "phishing" | |
return render_template('index.html', result=result, url=url, result_class=result_class) | |
if __name__ == '__main__': | |
app.run(debug=True) | |