Arv*_*wal 5 python numpy flask pandas python-3.6
Fake_News_Det.py中的代码:
\nfrom flask import Flask, render_template, request\nfrom sklearn.feature_extraction.text import TfidfVectorizer\nfrom sklearn.linear_model import PassiveAggressiveClassifier\nimport pickle\nimport pandas as pd\nfrom sklearn.model_selection import train_test_split\n\napp = Flask(__name__)\ntfvect = TfidfVectorizer(stop_words=\'english\', max_df=0.7)\nloaded_model = pickle.load(open(\'D:\\Fake_News_Detection\\model.pkl\', \'rb\'))\ndataframe = pd.read_csv(\'D:\\Fake_News_Detection\\data.csv\')\nx = dataframe[\'text\']\ny = dataframe[\'label\']\nx_train, x_test, y_train, y_test = train_test_split(x, y, test_size=0.2, random_state=0)\n\ndef fake_news_det(news):\n tfid_x_train = tfvect.fit_transform(x_train)\n tfid_x_test = tfvect.transform(x_test)\n input_data = [news]\n vectorized_input_data = tfvect.transform(input_data)\n prediction = loaded_model.predict(vectorized_input_data)\n return prediction\n\n@app.route(\'/\')\ndef home():\n return render_template(\'index.html\')\n\n@app.route(\'/predict\', methods=[\'POST\'])\ndef predict():\n if request.method == \'POST\':\n message = request.form[\'message\']\n pred = fake_news_det(message)\n print(pred)\n return render_template(\'index.html\', prediction=pred)\n else:\n return render_template(\'index.html\', prediction="Something went wrong")\n\nif __name__ == \'__main__\':\n app.run(debug=True)\nRun Code Online (Sandbox Code Playgroud)\n运行代码并在本地端口上查看它后,它显示错误:-
\n\n\nAttributeError AttributeError:“Token”对象没有属性“test”
\n
它有类型 jinja 错误序列中的错误列表,但我认为是
\nFile "D:\\Fake_News_Detection\\Fake_News_Det.py", line 31, in home\nreturn render_template(\'index.html\')\nRun Code Online (Sandbox Code Playgroud)\n尽管我在模板文件夹中有index.html 文件,但这与此有关
\n我的文件路径: \n请浏览这些图像文件https://i.stack.imgur.com/UbGZt.jpg
\n编辑:\n index.html代码:
\n<html lang="en">\n<head>\n <meta charset="UTF-8">\n <title>Fake News Detection System</title>\n <link href=\'https://fonts.googleapis.com/css?family=Pacifico\' rel=\'stylesheet\' type=\'text/css\'>\n<link href=\'https://fonts.googleapis.com/css?family=Arimo\' rel=\'stylesheet\' type=\'text/css\'>\n<link href=\'https://fonts.googleapis.com/css?family=Hind:300\' rel=\'stylesheet\' type=\'text/css\'>\n<link href=\'https://fonts.googleapis.com/css?family=Open+Sans+Condensed:300\' rel=\'stylesheet\' type=\'text/css\'>\n<link rel="stylesheet" href="{{ url_for(\'static\', filename=\'style.css\') }}">\n\n</head>\n\n<body>\n <div class="login">\n <h1>Fake News Detector</h1>\n\n <form action="{{ url_for(\'predict\')}}" method="POST">\n <textarea name="message" rows="6" cols="50" required="required" style="font-size: 18pt"></textarea>\n <br>\n <button type="submit" class="btn btn-primary btn-block btn-large">Predict</button>\n\n <div class="results">\n\n {% if prediction == [\'FAKE\']%}\n <h2 style="color:red;">Looking Spam\xe2\x9a\xa0\xef\xb8\x8fNews </h2>\n {% elif prediction == [\'REAL\']%}\n <h2 style="color:green;"><b>Looking Real News</b></h2>\n {% endif %}\n\n </div>\n\n </form>\n\n</div>\nRun Code Online (Sandbox Code Playgroud)\nstyle.css代码:
\n@import url(https://fonts.googleapis.com/css?family=Open+Sans);\n.btn { display: inline-block; *display: inline; *zoom: 1; padding: 4px 10px 4px; margin-bottom: 0; font-size: 13px; line-height: 18px; color: #333333; text-align: center;text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75); vertical-align: middle; background-color: #f5f5f5; background-image: -moz-linear-gradient(top, #ffffff, #e6e6e6); background-image: -ms-linear-gradient(top, #ffffff, #e6e6e6); background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), to(#e6e6e6)); background-image: -webkit-linear-gradient(top, #ffffff, #e6e6e6); background-image: -o-linear-gradient(top, #ffffff, #e6e6e6); background-image: linear-gradient(top, #ffffff, #e6e6e6); background-repeat: repeat-x; filter: progid:dximagetransform.microsoft.gradient(startColorstr=#ffffff, endColorstr=#e6e6e6, GradientType=0); border-color: #e6e6e6 #e6e6e6 #e6e6e6; border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); border: 1px solid #e6e6e6; -webkit-border-radius: 4px; -moz-border-radius: 4px; border-radius: 4px; -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05); -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05); box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05); cursor: pointer; *margin-left: .3em; }\n.btn:hover, .btn:active, .btn.active, .btn.disabled, .btn[disabled] { background-color: #e6e6e6; }\n.btn-large { padding: 9px 14px; font-size: 15px; line-height: normal; -webkit-border-radius: 5px; -moz-border-radius: 5px; border-radius: 5px; }\n.btn:hover { color: #333333; text-decoration: none; background-color: #e6e6e6; background-position: 0 -15px; -webkit-transition: background-position 0.1s linear; -moz-transition: background-position 0.1s linear; -ms-transition: background-position 0.1s linear; -o-transition: background-position 0.1s linear; transition: background-position 0.1s linear; }\n.btn-primary, .btn-primary:hover { text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); color: #ffffff; }\n.btn-primary.active { color: rgba(255, 255, 255, 0.75); }\n.btn-primary { background-color: #4a77d4; background-image: -moz-linear-gradient(top, #6eb6de, #4a77d4); background-image: -ms-linear-gradient(top, #6eb6de, #4a77d4); background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#6eb6de), to(#4a77d4)); background-image: -webkit-linear-gradient(top, #6eb6de, #4a77d4); background-image: -o-linear-gradient(top, #6eb6de, #4a77d4); background-image: linear-gradient(top, #6eb6de, #4a77d4); background-repeat: repeat-x; filter: progid:dximagetransform.microsoft.gradient(startColorstr=#6eb6de, endColorstr=#4a77d4, GradientType=0); border: 1px solid #3762bc; text-shadow: 1px 1px 1px rgba(0,0,0,0.4); box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.5); }\n.btn-primary:hover, .btn-primary:active, .btn-primary.active, .btn-primary.disabled, .btn-primary[disabled] { filter: none; background-color: #4a77d4; }\n.btn-block { width: 100%; display:block; }\n\n* { -webkit-box-sizing:border-box; -moz-box-sizing:border-box; -ms-box-sizing:border-box; -o-box-sizing:border-box; box-sizing:border-box; }\n\nhtml { width: 100%; height:100%; overflow:hidden; }\n\nbody {\n width: 100%;\n height:100%;\n font-family: \'Open Sans\', sans-serif;\n background: #092756;\n color: #fff;\n font-size: 18px;\n text-align:center;\n letter-spacing:1.2px;\n background: -moz-radial-gradient(0% 100%, ellipse cover, rgba(104,128,138,.4) 10%,rgba(138,114,76,0) 40%),-moz-linear-gradient(top, rgba(57,173,219,.25) 0%, rgba(42,60,87,.4) 100%), -moz-linear-gradient(-45deg, #670d10 0%, #092756 100%);\n background: -webkit-radial-gradient(0% 100%, ellipse cover, rgba(104,128,138,.4) 10%,rgba(138,114,76,0) 40%), -webkit-linear-gradient(top, rgba(57,173,219,.25) 0%,rgba(42,60,87,.4) 100%), -webkit-linear-gradient(-45deg, #670d10 0%,#092756 100%);\n background: -o-radial-gradient(0% 100%, ellipse cover, rgba(104,128,138,.4) 10%,rgba(138,114,76,0) 40%), -o-linear-gradient(top, rgba(57,173,219,.25) 0%,rgba(42,60,87,.4) 100%), -o-linear-gradient(-45deg, #670d10 0%,#092756 100%);\n background: -ms-radial-gradient(0% 100%, ellipse cover, rgba(104,128,138,.4) 10%,rgba(138,114,76,0) 40%), -ms-linear-gradient(top, rgba(57,173,219,.25) 0%,rgba(42,60,87,.4) 100%), -ms-linear-gradient(-45deg, #670d10 0%,#092756 100%);\n background: -webkit-radial-gradient(0% 100%, ellipse cover, rgba(104,128,138,.4) 10%,rgba(138,114,76,0) 40%), linear-gradient(to bottom, rgba(57,173,219,.25) 0%,rgba(42,60,87,.4) 100%), linear-gradient(135deg, #670d10 0%,#092756 100%);\n filter: progid:DXImageTransform.Microsoft.gradient( startColorstr=\'#3E1D6D\', endColorstr=\'#092756\',GradientType=1 );\n\n}\n.login {\n position: absolute;\n top: 40%;\n left: 50%;\n margin: -150px 0 0 -150px;\n width:400px;\n height:400px;\n}\n\n.login h1 { color: #fff; text-shadow: 0 0 10px rgba(0,0,0,0.3); letter-spacing:1px; text-align:center; }\n\ntextarea {\n width: 100%;\n margin-bottom: 10px;\n background: rgba(0,0,0,0.3);\n border: none;\n outline: none;\n padding: 10px;\n font-size: 25px;\n color: #fff;\n text-shadow: 1px 1px 1px rgba(0,0,0,0.3);\n border: 1px solid rgba(0,0,0,0.3);\n border-radius: 4px;\n box-shadow: inset 0 -5px 45px rgba(100,100,100,0.2), 0 1px 1px rgba(255,255,255,0.2);\n -webkit-transition: box-shadow .5s ease;\n -moz-transition: box-shadow .5s ease;\n -o-transition: box-shadow .5s ease;\n -ms-transition: box-shadow .5s ease;\n transition: box-shadow .5s ease;\n}\ninput:focus { box-shadow: inset 0 -5px 45px rgba(100,100,100,0.4), 0 1px 1px rgba(255,255,255,0.2); }\nRun Code Online (Sandbox Code Playgroud)\n
Mik*_*ton 12
我有同样的问题。
我有 Jinja2 3.0.1,我降到了 2.11.3,它解决了问题。
| 归档时间: |
|
| 查看次数: |
9298 次 |
| 最近记录: |