`

Nutch的分页功能

阅读更多

原文来自http://blog.chinaunix.net/u1/50183/showart_395349.html

搜索引擎nutch在查询搜索结果时,只有下一页功能。现在实现了分页功能,并把是show all hits删去

1.删去show all hits
修改:
         int hitsPerSite = 0; // max hits per site
2.分页功能
      <table align="center">
            <tr>
            <td>
                    <%
                        if (start >= hitsPerPage) // more hits to show
                        {
                    %>
                    <form name="pre" action="../search.jsp" method="get">
                        <input type="hidden" name="query" value="<%=htmlQueryString%>">
                        <input type="hidden" name="lang" value="<%=queryLang%>">
                        <input type="hidden" name="start" value="<%=start - hitsPerPage%>">
                        <input type="hidden" name="hitsPerPage" value="<%=hitsPerPage%>">
                        <input type="hidden" name="hitsPerSite" value="<%=hitsPerSite%>">
                        <input type="hidden" name="clustering" value="<%=clustering%>">
                        <input type="submit" value="上一页">
                        <%} %>
                    </form>
                    <%
                    int startnum=1;//页面中最前面的页码编号,我设定(满足)共10页,当页为第6页
                    if((int)(start/hitsPerPage)>=5)
                    startnum=(int)(start/hitsPerPage)-4;
                    for(int i=hitsPerPage*(startnum-1),j=0;i<=hits.getTotal()&&j<=10;)
                    {
                     %>
                     <td>
                     <form name="next" action="../search.jsp" method="get">
                        <input type="hidden" name="query" value="<%=htmlQueryString%>">
                        <input type="hidden" name="lang" value="<%=queryLang%>">
                        <input type="hidden" name="start" value="<%=i%>">
                        <input type="hidden" name="hitsPerPage" value="<%=hitsPerPage%>">
                        <input type="hidden" name="hitsPerSite" value="<%=hitsPerSite%>">
                        <input type="hidden" name="clustering" value="<%=clustering%>">
                        <input type="submit" value="<%=i/hitsPerPage+1 %>">
                    </form>
                    </td>
                    <%
                    i=i+5;
                    j++;
                    }
                     %>
                <td>
                    <%
         if ((hits.totalIsExact() && end < hits.getTotal()) // more hits to show
                                || (!hits.totalIsExact() && (hits.getLength() > start
                                + hitsPerPage))) {
                    %>
                   
                    <form name="next" action="../search.jsp" method="get">
                        <input type="hidden" name="query" value="<%=htmlQueryString%>">
                        <input type="hidden" name="lang" value="<%=queryLang%>">
                        <input type="hidden" name="start" value="<%=end%>">
                        <input type="hidden" name="hitsPerPage" value="<%=hitsPerPage%>">
                        <input type="hidden" name="hitsPerSite" value="<%=hitsPerSite%>">
                        <input type="hidden" name="clustering" value="<%=clustering%>">
                        <input type="submit" value="<i18n:message key="next"/>">//下一页
                    </form>
                    <%} %>
                    </td>
                  </tr>
                    </table>

 

 

<%
    i=i+5;
    j++;
}
这里的i应该改成i=i+10,才会以每页10记录显示
如果按照5条记录显示的话,上面的hitsPerPage定义要改变
否则会显示不对

分享到:
评论

相关推荐

    nutch 0.9分页代码(粘贴可用)

    根据提供的代码片段,我们可以看到这是一段 JSP (Java Server Pages) 代码,用于实现分页功能。该代码主要通过动态生成 HTML 表单来实现页面之间的跳转。接下来我们将逐步解析这段代码。 ##### 1. 变量初始化 - `...

    nutch入门教程

    Nutch的搜索功能可以根据不同的查询策略,提供排序、分页等功能。 #### 6. Nutch分析方法和工具 **6.1 Crawldb** Crawldb是Nutch用于存储已抓取网页信息的数据库,包括网页的URL、抓取时间、状态码等,是分析抓取...

    Nutch在Tomcat下的部署.doc

    7. **实现简单的分页效果**:如果你想在搜索结果中添加分页功能,可以通过调整代码实现。例如,你可以修改`hitsPerSite`变量的值,控制每个站点显示的最大结果数。同时,更新HTML表单的`&lt;input&gt;`标签以传递分页参数...

    nutch2.1最新svn打包

    Nutch的核心功能包括: 1. **网络爬虫**:Nutch使用了一种基于链接分析的爬行策略,能够根据网页之间的链接关系来决定下一步抓取的页面。它支持分布式爬行,可以在多台机器上并行工作,处理大规模的网页数据。 2. ...

    采集程序,网站采集程序,信息采集程序

    "采集页.html"与"下一页.html"可能是采集过程中遇到的实际网页文件,其中"下一页.html"可能代表程序设计时考虑到了网站的分页功能,通过自动遍历页面链接来抓取更多数据。这种功能对于处理新闻网站、电商网站等有...

    solr基本总结

    - **Nutch**:这是一个用于网络爬取和搜索的框架。 - **Ikanalyzer**:一种针对中文文本的分词器。 - **Sphinx**:另一个高性能的全文搜索引擎,主要用于数据库的全文检索。 - **Lucene**:Solr 的基础技术栈之一,...

    java爬虫抓取网页内容,下载网站图片

    Java爬虫技术是一种用于自动化获取网页内容的程序,它能够模拟人类浏览器的行为,遍历互联网上的...在实际项目中,根据需求可能会使用到更多高级特性,如Scrapy、Nutch这样的框架,或者使用机器学习技术进行智能分析。

    lucene索引与搜索(含jar包)

    在实际的搜索引擎开发中,Lucene 可以作为基础框架,结合其他技术如 Nutch(用于网络爬虫)和 Solr(提供更高级的搜索服务,如多字段搜索、分页、高亮显示等)来构建一个完整的搜索引擎系统。`Indexer` 和 `Searcher...

    一个专业搜索公司关于lucene+solar资料(1)

    - **搜索引擎的功能:** - 提供快速、准确的信息检索服务。 - 支持多种查询方式,如关键字搜索、语音搜索等。 - 能够根据用户的查询历史和偏好提供个性化搜索结果。 **1.3 你也可以做搜索引擎** - **构建搜索...

Global site tag (gtag.js) - Google Analytics