python - 自动摘要仅返回第一句 - Python / Flask
问题描述
尝试创建一个使用多种算法自动总结文章的网站。遇到仅从选择中提取第一句话的问题,感谢您提供任何帮助。
我正在使用作为摘要库的库 sumy,并使用烧瓶和 HTML/CSS 从算法中输出自动摘要。除了 LSA,唯一的输出是第一句话,让我相信这与我的“para”变量有关。我创建它是因为它附加了字符串以创建完整的段落,但我确信有一种更简单的方法可以做到这一点。
@app.route('/dependent', methods = ['POST'])
def mySumD():
if request.form['action'] == 'LSA':
para = ""
url = request.form['url_link']
parser = HtmlParser.from_url(url, Tokenizer(LANGUAGE))
stemmer = Stemmer(LANGUAGE)
summarizer = Summarizer(stemmer)
summarizer.stop_words = get_stop_words(LANGUAGE)
for sentence in summarizer(parser.document, SENTENCES_COUNT):
data = str(sentence)
para += data
return render_template('dependent.html', para = para)
elif request.form['action'] == 'Luhn':
para = ""
url = request.form['url_link']
parser = HtmlParser.from_url(url, Tokenizer(LANGUAGE))
stemmer = Stemmer(LANGUAGE)
summarizer = LuhnSummarizer(stemmer)
summarizer.stop_words = get_stop_words(LANGUAGE)
for sentence in summarizer(parser.document, SENTENCES_COUNT):
data = str(sentence)
para += data
return render_template('dependent.html', para = para)
elif request.form['action'] == 'LexRank':
para = ""
url = request.form['url_link']
parser = HtmlParser.from_url(url, Tokenizer(LANGUAGE))
stemmer = Stemmer(LANGUAGE)
summarizer = LexSummarizer(stemmer)
summarizer.stop_words = get_stop_words(LANGUAGE)
for sentence in summarizer(parser.document, SENTENCES_COUNT):
data = str(sentence)
para += data
return render_template('dependent.html', para = para)
<form action = "{{ url_for('mySumD') }}" method = "POST" id="urlForm" class="standard">
<input type="url" id = "url" name="url_link" class= "form-control" placeholder="Insert URL here...">
<div id="url_field_is_empty" class="error" style="display: none"> You must submit a valid URL</div>
<h1>Choose Your Summarization Method</h1>
<div class="btn-group" style="width:100%" id="subscribersoptions">
<button style="width:20%" type ="submit" name="action" value="LSA">LSA</button>
<button style="width:20%" type ="submit" name="action" value="Luhn">Luhn</button>
<button style="width:20%" type ="submit" name="action" value="LexRank">Lex Rank</button>
<button style="width:20%" type ="submit" name="action" value="TextRank">Text Rank</button>
<button style="width:20%" type ="submit" name="action" value="SumBasic">SumBasic</button>
<button style="width:20%" type ="submit" name="action" value="KL-Sum">KL-Sum</button>
</div>
<br>
{{para}}
</form>
解决方案
推荐阅读
- php - 如何在函数中输入变量以在 MySQL 准备语句中使用?
- css - CSS 过渡下拉 - 自动滚动到有条件渲染的元素
- r - 如何在 ggplot 中空白轴标题而不影响绘图大小?
- algorithm - 修复二叉搜索树的算法
- javascript - ReferenceError:找不到变量:登录
- php - PHP 传递命令行选项
- c# - MVC Web 应用程序中的混合身份验证模式(匿名和窗口)
- python - requirements.txt 波浪号等于 (~=) 与波浪号大于 (~>)
- couchdb - 与 Hyperledger Fabric 一起使用时扩展 CouchDB
- python - 从输出字典中的重复值和交换值创建字典