Я разрабатываю приложение типа поисковой машины. Мой код выглядит так:
def bm25searcher(queri,pagi):
folders = loadfolders("files-clean/")
xieon =""
#query = sys.argv[1]
query=queri
results=[]
page = pagi
if(pagi==""):
page = 1
for folder in folders:
files = loadfiles("files-clean/"+folder+"/")
for filegotten in files:
x = removeemptylines(readpdf("pdf/"+folder+"/"+filegotten.replace("txt","pdf")))
#results.append(str(tfidf_cosine_similarity(query,"files-clean/"+folder+"/"+filegotten))+",""files-clean/"+folder+"/"+filegotten.replace("txt","pdf")+","+abstract(x))
results.append(str(bm25_cosine_similarity(query,"files-clean/"+folder+"/"+filegotten))+"~"+"<table width=\"100%\" border=\"1\"><tr><td width=\"88%\">"+filegotten.replace("txt","pdf")+"</td><td width=\"12%\"> </td></tr><tr><td>"+abstract(x)+"</td><td><a href='"+"static/pdf/"+folder+"/"+filegotten.replace("txt","pdf")+"' target='_blank'>Read File</a></td></tr></table><br/>"+"~"+x)
res = sorted(results,reverse=True)
sentencebulk = ""
for g in range (10*int(page)-10,10*int(page)):
if int(g)<145:
ming = res[g+1].split("~")
xieon+=str(ming[1])
sentencebulk = sentencebulk+" "+ming[2]+" "
sio = wordclouder2(sentencebulk)
return xieon+"</td><td rowspan=\"2\" width=\"100%\" align=\"left\" valign=\"top\">"+sio+"</td>"
Мой Flask Код ядра выглядит так:
app = Flask(__name__,template_folder="template/",static_folder="static/")
@app.route('/')
def hello_world():
#return mainpage()
return render_template("index.html")
@app.route('/tfidf/',methods=["POST", "GET"])
def tfidf():
lig = ""
page = ""
if request.method == "POST":
lig = request.form["textfield"]
page = request.form['search']
return render_template("tfidf.html",output=str(tfidfx(lig,page)))
@app.route('/bm25/',methods=["POST", "GET"])
def bm25():
lig = ""
page = ""
if request.method == "POST":
lig = request.form["textfield"]
page = request.form['search']
#return bm25x(lig,page)
return render_template("bm25.html",output=str(bm25x(lig,page)))
return xieon
# main driver function
if __name__ == '__main__':
# run() method of Flask class runs the application
# on the local development server.
app.run()
Я хочу, чтобы код возвращал путь PDF в HTML из python, кодируя как:
http://127.0.0.1:5000/static/pdf/civil Appeal/somefile.pdf
Но он возвращает
http://127.0.0.1:5000/bm25/static/pdf/civil Appeal/somefile.pdf
Как я могу изменить этот код в python кодировке html, который дает stati c путь от базового URL, а не от страницы, которую он открыл? i.e url/static/
нет конец выглядит так:
введите описание изображения здесь