我正在尝试在Flask中链接网址,但无法找到问题的解决方案。我的想法是根据我的网页中给出的参数在UniProt中搜索蛋白质。例子是:
@app.route('/http.html')
def http():
return render_template('http.html')
@app.route('/http_results', methods=['POST'])
def http_results():
protname_seq = request.form['protname_seq']
specie_seq = request.form['specie_seq']
input_text = seqtools.httplink(protname_seq,specie_seq)
return render_template('http_results.html', **locals())
在seqtools
中,我有一个带有以下函数的python代码:
def httplink(prot,specie):
a=prot
b='_'+specie
c=print('http://www.uniprot.org/uniprot/?query=',a+b,'&sort=score')
return c
现在在http_results.html
我尝试了多项内容,但最终结果是无或错误,所以我真的不知道如何继续。 http_results.html
代码为:
{% extends "layout.html" %}
{% block body %}
<div>
<p>The link to the protein is:</p>
<p><a href={{input_text}}>{{ protname_seq }}</a></p>
<br>
</div>
{% endblock %}
只需要与UniProt网页链接的蛋白质名称。感谢您的帮助,对不起我的英语。
答案 0 :(得分:0)
在名为httplink
的函数中,您不会指定c
任何内容。你应该在print语句中返回字符串文字。
def httplink(prot, specie):
url = 'http://www.uniprot.org/uniprot/?query=%s_%s&sort=score'
return url % (prot, specie)
此功能应解决此问题。