我使用 Flask 创建了一个搜索引擎,它返回从与健康主题相关的文章生成的维基百科语料库的搜索结果。有些查询返回数百个结果,因此我想添加一个功能,将结果拆分为多个页面。下面是生成网页的index.html
代码:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 |
|
我没有太多使用 HTML 创建网页的经验,所以我不完全确定如何添加此功能。这里还有生成应用程序的 Python 代码:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
|
该代码使用语料库的倒排索引打开一个 pickle 文件,然后针对该索引运行查询,对结果进行排名并返回它们。每个搜索结果下方还显示每个维基百科文章的文本摘要。如果您想尝试一下并看看我正在尝试做什么,这里是网页的部署版本:https://searchenginecapstone.herokuapp.com/
如果您搜索“健康”,您会看到一页上有 442 个结果。我想调整代码(我认为这将仅在 HTML 部分中完成 - 但不完全确定)以将结果分成 10-20 个块。页面右下角已经有一个用于页面的按钮,但它目前没有任何作用。我感谢您提供的任何帮助或想法。如果您还需要从编码方面查看其他内容来回答这个问题,请告诉我。
我发现 Flask 对 paginate()
方法的分页有本机支持,因此如果我使用以下内容修改 render_template()
中返回的内容:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
|
该页面似乎可以工作(没有出现分页),所以我想我必须更新索引文件以反映分页更改,但我不知道如何。