现在在做图书比价网的毕业设计。采用框架为ssh+Lucene+heritrix
但在用heritrix抓取网页就出现问题了。比如我只想抓这个页面http://www.amazon.cn/mn/channel?channelCode=book
于是自己写了个定制类:
public class FrontierSchedulerForAmazon extends FrontierScheduler { private static Logger LOGGER = Logger
.getLogger(FrontierSchedulerForAmazon.class.getName()); // 构造函数
public FrontierSchedulerForAmazon(String name) {
super(name);
} protected void schedule(CandidateURI caUri) { // 取得URL的字符串
String url = caUri.toString(); try {
// URL选择策略
if (url.indexOf("http://www.amazon.cn/mn/channel?channelCode=book") != -1
|| url.indexOf("robots.txt") != -1
|| url.indexOf("dns:") != -1) { getController().getFrontier().schedule(caUri);
} else {
return;
}
} catch (Exception e) {
e.printStackTrace();
} finally {
}
}
} 可不管用,最后只给我返回来一个卓越首页该咋办呢,求指教!!
但在用heritrix抓取网页就出现问题了。比如我只想抓这个页面http://www.amazon.cn/mn/channel?channelCode=book
于是自己写了个定制类:
public class FrontierSchedulerForAmazon extends FrontierScheduler { private static Logger LOGGER = Logger
.getLogger(FrontierSchedulerForAmazon.class.getName()); // 构造函数
public FrontierSchedulerForAmazon(String name) {
super(name);
} protected void schedule(CandidateURI caUri) { // 取得URL的字符串
String url = caUri.toString(); try {
// URL选择策略
if (url.indexOf("http://www.amazon.cn/mn/channel?channelCode=book") != -1
|| url.indexOf("robots.txt") != -1
|| url.indexOf("dns:") != -1) { getController().getFrontier().schedule(caUri);
} else {
return;
}
} catch (Exception e) {
e.printStackTrace();
} finally {
}
}
} 可不管用,最后只给我返回来一个卓越首页该咋办呢,求指教!!
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货