Commit 7ffc6998 authored by yihua.huang's avatar yihua.huang

add isExtractLinks to OOSpider #575

parent 8999ea93
...@@ -23,6 +23,8 @@ class ModelPageProcessor implements PageProcessor { ...@@ -23,6 +23,8 @@ class ModelPageProcessor implements PageProcessor {
private Site site; private Site site;
private boolean extractLinks = true;
public static ModelPageProcessor create(Site site, Class... clazzs) { public static ModelPageProcessor create(Site site, Class... clazzs) {
ModelPageProcessor modelPageProcessor = new ModelPageProcessor(site); ModelPageProcessor modelPageProcessor = new ModelPageProcessor(site);
for (Class clazz : clazzs) { for (Class clazz : clazzs) {
...@@ -45,8 +47,10 @@ class ModelPageProcessor implements PageProcessor { ...@@ -45,8 +47,10 @@ class ModelPageProcessor implements PageProcessor {
@Override @Override
public void process(Page page) { public void process(Page page) {
for (PageModelExtractor pageModelExtractor : pageModelExtractorList) { for (PageModelExtractor pageModelExtractor : pageModelExtractorList) {
if (extractLinks) {
extractLinks(page, pageModelExtractor.getHelpUrlRegionSelector(), pageModelExtractor.getHelpUrlPatterns()); extractLinks(page, pageModelExtractor.getHelpUrlRegionSelector(), pageModelExtractor.getHelpUrlPatterns());
extractLinks(page, pageModelExtractor.getTargetUrlRegionSelector(), pageModelExtractor.getTargetUrlPatterns()); extractLinks(page, pageModelExtractor.getTargetUrlRegionSelector(), pageModelExtractor.getTargetUrlPatterns());
}
Object process = pageModelExtractor.process(page); Object process = pageModelExtractor.process(page);
if (process == null || (process instanceof List && ((List) process).size() == 0)) { if (process == null || (process instanceof List && ((List) process).size() == 0)) {
continue; continue;
...@@ -83,4 +87,12 @@ class ModelPageProcessor implements PageProcessor { ...@@ -83,4 +87,12 @@ class ModelPageProcessor implements PageProcessor {
public Site getSite() { public Site getSite() {
return site; return site;
} }
public boolean isExtractLinks() {
return extractLinks;
}
public void setExtractLinks(boolean extractLinks) {
this.extractLinks = extractLinks;
}
} }
...@@ -97,4 +97,9 @@ public class OOSpider<T> extends Spider { ...@@ -97,4 +97,9 @@ public class OOSpider<T> extends Spider {
return this; return this;
} }
public OOSpider setIsExtractLinks(boolean isExtractLinks){
modelPageProcessor.setExtractLinks(isExtractLinks);
return this;
}
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment