修改nutch\cached.jsp,
将content =
new String(bean.getContent(details))
修改为content
= new String(bean.getContent(details),"utf-8")
在画红框的地方加上UTF-8即可
以下内容参考:http://blog.csdn.net/xiaomage_cn/archive/2010/07/13/5731112.aspx进行总结
如果改为UTF-8后如果为gb2312、gbk等页面将会出现乱码
然后还有一些文章是对Metadata修改parseDate的contentmeta来实现获取正确的编码方式,这个思路是非常正确的,但是还是有一点问题,仍然会存在一些gb2312的页面出现乱码,下面对网页快照乱码进行最终的一个简单的解决办法:
修改cache.jsp如下:
上面画红框的是修改后的内容
蓝框是原始内容
ParseData ParseData = bean.getParseData(details);
String content = null;
String contentType = ParseData.getMeta(Metadata.CONTENT_TYPE);
if (contentType.startsWith("text/html")) {
// FIXME : it's better to emit the original 'byte' sequence
// with 'charset' set to the value of 'CharEncoding',
// but I don't know how to emit 'byte sequence' in JSP.
// out.getOutputStream().write(bean.getContent(details)) may work,
// but I'm not sure.
String encoding = ParseData.getMeta("CharEncodingForConversion");
if (encoding != null) {
try {
content = new String(bean.getContent(details), encoding);
}
catch (UnsupportedEncodingException e) {
// fallback to windows-1252
content = new String(bean.getContent(details), "windows-1252");
}
}
else
content = new String(bean.getContent(details),"GBK");
}
- 大小: 50.3 KB
- 大小: 124.3 KB
分享到:
相关推荐
总的来说,解决Nutch的网页乱码问题需要深入理解字符编码原理,以及Nutch内部的处理流程。通过优化URL解码、HTTP头解析、字符集探测和转换逻辑,我们可以有效地避免或修复乱码问题,从而提高Nutch的抓取质量和用户...
如果提供的压缩包文件“nutch乱码BUG修正”包含了具体的代码和说明,可以按照其中的指示进行操作,以更精确地解决问题。记住,始终关注每个阶段的数据编码,确保在整个流程中的一致性,是避免乱码的关键。
2. **快照链接无效**:Nutch 在抓取网页时会创建网页快照,方便用户查看网页的历史状态。如果快照链接失效,可能是由于URL重定向、网页结构改变或存储问题导致。为了解决这个问题,可以: - 检查 Nutch 的抓取日志...
当我们谈论“nutch根据URL来查找快照”时,实际上是在讨论如何通过Nutch系统找到与特定URL关联的网页快照。在索引重建过程中,由于新的抓取可能会导致旧的索引被覆盖,因此有时我们需要查看旧的快照以回溯之前的状态...
**Nutch 网页爬取总结** **前言** Nutch 是一个开源的网络爬虫项目,由 Apache 基金会维护,主要用于构建大规模的搜索引擎。它提供了从互联网抓取网页、分析链接关系、生成倒排索引等一系列功能。Nutch 的设计目标...
当Nutch遇到中文URL时,如果快照保存不当,可能会导致中文URL在存储时出现乱码,从而影响到快照的正确性。 4. **代码修改与定制**:在"修改中文URL快照BUG1.png、修改中文URL快照BUG2.png、修改中文URL快照BUG3.png...
Nutch是Apache软件基金会开发的一款开源的Web爬虫系统,它用于抓取互联网上的网页并构建倒排索引,为搜索引擎提供数据基础。在实际应用中,由于Nutch的默认配置和工作流程可能存在效率问题,因此,理解其运行原理并...
### nutch10配置(解决代理问题) #### 知识点概述 在处理网络爬虫时,遇到代理问题是非常常见的。对于Nutch这样的开源爬虫框架来说,正确配置代理是确保能够顺利抓取互联网资源的关键步骤之一。本文将详细介绍...
在Java编程环境中,获取Nutch中的网页详细信息是一项常见的任务,尤其对于那些处理大量网络数据的项目来说。Nutch是一个开源的Web爬虫框架,它能够抓取互联网上的网页并进行索引,非常适合用于大数据分析和搜索引擎...
Nutch是一款开源的Web搜索引擎项目,它主要用于抓取和索引网页内容,是大数据和文本挖掘领域中的一个重要工具。在Nutch的工作流程中,摘要生成是一个关键环节,它有助于快速理解网页的主要内容,提高搜索结果的...
2. **网页快照乱码** - 对于网页快照的乱码问题,需要修改 `cached.jsp` 文件,将内容转换为正确的字符编码。 通过以上步骤,你已经成功地入门了Nutch的使用,能够进行网页抓取和搜索。不过,实际使用中还需要注意...
### Nutch 的安装方法详解 #### 一、前言 Nutch是一款开源的网络爬虫项目,基于Hadoop实现,可以抓取整个互联网,并且能够根据网页内容进行索引和检索。本文将详细介绍如何在Windows环境下安装配置Nutch,使初学者...
总结,Nutch是一个强大且灵活的网络爬虫工具,对于需要进行大规模网页抓取和搜索的项目来说,是一个理想的解决方案。通过学习和实践这个入门教程,你将能够熟练地运用Nutch进行数据采集和分析。
虽然Nutch的页面排序方法比较合理,但是很多情况下仍然不能 满足需要。分析开源搜索引擎Nutch代码,研究了Nutch的页面排序方法。在Nutch原有的结构基础上提出了3种修改Nutch 排序的方法,对每种方法的实现进行了阐述...
Nutch 提供了一套完整的解决方案,包括爬虫、索引器和搜索引擎,使得开发者可以轻松构建自己的网络爬虫系统。 **Nutch 的架构** Nutch 的架构基于分治思想,整个抓取过程被分为多个步骤,包括种子页面生成、页面...
标题中的“电信设备-一种基于Nutch的Web信息提取方法和系统”暗示了这个压缩包内容涉及的是在电信行业中利用Nutch工具进行网络信息检索和提取的技术应用。Nutch是Apache软件基金会的一个开源项目,主要功能是实现大...
- **链接分析**:Nutch使用PageRank算法对网页进行排名,根据网页的重要性和相关性进行索引。 - **文本分析**:Nutch内置了Lucene库,用于分词、去除停用词、词干化等文本预处理。 - **索引和搜索**:抓取并处理...
Nutch 使用了 PageRank 算法进行链接分析,这是一种评估网页重要性的方法。通过考虑网页之间的链接关系,PageRank 能够确定哪些页面在互联网上更具影响力。 5. **分词与索引**: Nutch 内置了 Lucene 搜索库,...