diff --git a/webmagic-extension/src/main/java/us/codecraft/webmagic/MultiPageModel.java b/webmagic-extension/src/main/java/us/codecraft/webmagic/MultiPageModel.java index e3411fc..88caf3e 100644 --- a/webmagic-extension/src/main/java/us/codecraft/webmagic/MultiPageModel.java +++ b/webmagic-extension/src/main/java/us/codecraft/webmagic/MultiPageModel.java @@ -8,6 +8,7 @@ import java.util.Collection; * Extract an object of more than one pages, such as news and articles。
* * @author code4crafter@gmail.com
+ * @since 0.2.0 */ @Experimental public interface MultiPageModel { diff --git a/webmagic-extension/src/main/java/us/codecraft/webmagic/model/AfterExtractor.java b/webmagic-extension/src/main/java/us/codecraft/webmagic/model/AfterExtractor.java index 5b74309..91c603f 100644 --- a/webmagic-extension/src/main/java/us/codecraft/webmagic/model/AfterExtractor.java +++ b/webmagic-extension/src/main/java/us/codecraft/webmagic/model/AfterExtractor.java @@ -3,9 +3,10 @@ package us.codecraft.webmagic.model; import us.codecraft.webmagic.Page; /** - * 实现这个接口即可在抽取后进行后处理。
+ * Interface to be implemented by page models that need to do something after fields are extracted。
* * @author code4crafter@gmail.com
+ * @since 0.2.0 */ public interface AfterExtractor { diff --git a/webmagic-extension/src/main/java/us/codecraft/webmagic/model/ConsolePageModelPipeline.java b/webmagic-extension/src/main/java/us/codecraft/webmagic/model/ConsolePageModelPipeline.java index c841f10..abf411c 100644 --- a/webmagic-extension/src/main/java/us/codecraft/webmagic/model/ConsolePageModelPipeline.java +++ b/webmagic-extension/src/main/java/us/codecraft/webmagic/model/ConsolePageModelPipeline.java @@ -4,9 +4,10 @@ import org.apache.commons.lang3.builder.ToStringBuilder; import us.codecraft.webmagic.Task; /** + * Print page model in console.
+ * Usually used in test.
* @author code4crafter@gmail.com
- * Date: 13-8-3
- * Time: 下午3:41
+ * @since 0.2.0 */ public class ConsolePageModelPipeline implements PageModelPipeline { @Override diff --git a/webmagic-extension/src/main/java/us/codecraft/webmagic/model/Extractor.java b/webmagic-extension/src/main/java/us/codecraft/webmagic/model/Extractor.java index 0494076..32f561e 100644 --- a/webmagic-extension/src/main/java/us/codecraft/webmagic/model/Extractor.java +++ b/webmagic-extension/src/main/java/us/codecraft/webmagic/model/Extractor.java @@ -3,9 +3,9 @@ package us.codecraft.webmagic.model; import us.codecraft.webmagic.selector.Selector; /** + * The object contains 'ExtractBy' information. * @author code4crafter@gmail.com
- * Date: 13-8-1
- * Time: 下午9:48
+ * @since 0.2.0 */ class Extractor { diff --git a/webmagic-extension/src/main/java/us/codecraft/webmagic/model/FieldExtractor.java b/webmagic-extension/src/main/java/us/codecraft/webmagic/model/FieldExtractor.java index 4ec1bbc..600e184 100644 --- a/webmagic-extension/src/main/java/us/codecraft/webmagic/model/FieldExtractor.java +++ b/webmagic-extension/src/main/java/us/codecraft/webmagic/model/FieldExtractor.java @@ -6,18 +6,18 @@ import java.lang.reflect.Field; import java.lang.reflect.Method; /** + * Wrapper of field and extractor. * @author code4crafter@gmail.com
- * Date: 13-8-1
- * Time: 下午9:48
+ * @since 0.2.0 */ -class FieldExtractor extends Extractor{ +class FieldExtractor extends Extractor { private final Field field; private Method setterMethod; - public FieldExtractor(Field field, Selector selector, Source source, boolean notNull,boolean multi) { - super(selector, source, notNull,multi); + public FieldExtractor(Field field, Selector selector, Source source, boolean notNull, boolean multi) { + super(selector, source, notNull, multi); this.field = field; } diff --git a/webmagic-extension/src/main/java/us/codecraft/webmagic/model/HasKey.java b/webmagic-extension/src/main/java/us/codecraft/webmagic/model/HasKey.java index dd9ace2..3a8e6e2 100644 --- a/webmagic-extension/src/main/java/us/codecraft/webmagic/model/HasKey.java +++ b/webmagic-extension/src/main/java/us/codecraft/webmagic/model/HasKey.java @@ -1,18 +1,18 @@ package us.codecraft.webmagic.model; +import us.codecraft.webmagic.model.annotation.Experimental; + /** - * 标志一个Model的key。
- * 实现了这个接口的Model在输出时会使用getKey()作为标志(例如JsonFilePageModelPipeline中持久化的文件名)。
- * 如果持久化的文件名是乱码,请再运行的环境变量里加上LANG=zh_CN.UTF-8 。
- * + * Interface to be implemented by page mode.
+ * Can be used to identify a page model, or be used as name of file storing the object.
* @author code4crafter@gmail.com
- * Date: 13-8-10
- * Time: 上午7:39
+ * @since 0.2.0 */ +@Experimental public interface HasKey { /** - * 在输出时会使用key作为标志(例如JsonFilePageModelPipeline中持久化的文件名)。 + * * * @return key */ diff --git a/webmagic-extension/src/main/java/us/codecraft/webmagic/model/ModelPageProcessor.java b/webmagic-extension/src/main/java/us/codecraft/webmagic/model/ModelPageProcessor.java index af762ec..8a40dae 100644 --- a/webmagic-extension/src/main/java/us/codecraft/webmagic/model/ModelPageProcessor.java +++ b/webmagic-extension/src/main/java/us/codecraft/webmagic/model/ModelPageProcessor.java @@ -14,10 +14,10 @@ import java.util.regex.Matcher; import java.util.regex.Pattern; /** - * 基于PageProcessor的扩展点。
+ * The extension to PageProcessor for page model extractor. + * * @author code4crafter@gmail.com
- * Date: 13-8-1
- * Time: 下午8:46
+ * @since 0.2.0 */ class ModelPageProcessor implements PageProcessor { diff --git a/webmagic-extension/src/main/java/us/codecraft/webmagic/model/ModelPipeline.java b/webmagic-extension/src/main/java/us/codecraft/webmagic/model/ModelPipeline.java index 07d6c5a..071cb26 100644 --- a/webmagic-extension/src/main/java/us/codecraft/webmagic/model/ModelPipeline.java +++ b/webmagic-extension/src/main/java/us/codecraft/webmagic/model/ModelPipeline.java @@ -11,11 +11,10 @@ import java.util.Map; import java.util.concurrent.ConcurrentHashMap; /** - * 基于Pipeline的扩展点,用于实现注解格式的Pipeline。
- * 与PageModelPipeline是一对多的关系(原谅作者没有更好的名字了)。
+ * The extension to Pipeline for page model extractor. + * * @author code4crafter@gmail.com
- * Date: 13-8-2
- * Time: 上午10:47
+ * @since 0.2.0 */ class ModelPipeline implements Pipeline { diff --git a/webmagic-extension/src/main/java/us/codecraft/webmagic/model/OOSpider.java b/webmagic-extension/src/main/java/us/codecraft/webmagic/model/OOSpider.java index e04a30d..cbfd50f 100644 --- a/webmagic-extension/src/main/java/us/codecraft/webmagic/model/OOSpider.java +++ b/webmagic-extension/src/main/java/us/codecraft/webmagic/model/OOSpider.java @@ -42,7 +42,7 @@ public class OOSpider extends Spider { } /** - * 创建一个爬虫。
+ * create a spider * @param site * @param pageModelPipeline * @param pageModels diff --git a/webmagic-extension/src/main/java/us/codecraft/webmagic/model/PageModelExtractor.java b/webmagic-extension/src/main/java/us/codecraft/webmagic/model/PageModelExtractor.java index 043af10..522d491 100644 --- a/webmagic-extension/src/main/java/us/codecraft/webmagic/model/PageModelExtractor.java +++ b/webmagic-extension/src/main/java/us/codecraft/webmagic/model/PageModelExtractor.java @@ -15,11 +15,10 @@ import java.util.List; import java.util.regex.Pattern; /** - * Model主要逻辑类。将一个带注解的POJO转换为一个PageModelExtractor。
+ * The main internal logic of page model extractor. * * @author code4crafter@gmail.com
- * Date: 13-8-1
- * Time: 下午9:33
+ * @since 0.2.0 */ class PageModelExtractor { diff --git a/webmagic-extension/src/main/java/us/codecraft/webmagic/model/PageModelPipeline.java b/webmagic-extension/src/main/java/us/codecraft/webmagic/model/PageModelPipeline.java index a70137f..2cb3808 100644 --- a/webmagic-extension/src/main/java/us/codecraft/webmagic/model/PageModelPipeline.java +++ b/webmagic-extension/src/main/java/us/codecraft/webmagic/model/PageModelPipeline.java @@ -3,9 +3,10 @@ package us.codecraft.webmagic.model; import us.codecraft.webmagic.Task; /** + * Implements PageModelPipeline to persistent your page model. + * * @author code4crafter@gmail.com
- * Date: 13-8-3
- * Time: 上午9:34
+ * @since 0.2.0 */ public interface PageModelPipeline { diff --git a/webmagic-extension/src/main/java/us/codecraft/webmagic/model/annotation/package.html b/webmagic-extension/src/main/java/us/codecraft/webmagic/model/annotation/package.html index 4e213f7..fbac5e9 100644 --- a/webmagic-extension/src/main/java/us/codecraft/webmagic/model/annotation/package.html +++ b/webmagic-extension/src/main/java/us/codecraft/webmagic/model/annotation/package.html @@ -1,5 +1,5 @@ -Annotations for define a class. +Annotations for defining a extractor. diff --git a/webmagic-extension/src/main/java/us/codecraft/webmagic/selector/JsonPathSelector.java b/webmagic-extension/src/main/java/us/codecraft/webmagic/selector/JsonPathSelector.java index 5a41c47..2270384 100644 --- a/webmagic-extension/src/main/java/us/codecraft/webmagic/selector/JsonPathSelector.java +++ b/webmagic-extension/src/main/java/us/codecraft/webmagic/selector/JsonPathSelector.java @@ -6,8 +6,11 @@ import java.util.ArrayList; import java.util.List; /** - * JsonPath + * JsonPath selector.
+ * Used to extract content from JSON.
+ * * @author code4crafter@gmail.com
+ * @since 0.2.1 */ public class JsonPathSelector implements Selector { @@ -43,7 +46,7 @@ public class JsonPathSelector implements Selector { return list; } if (object instanceof List) { - return (List)object; + return (List) object; } else { list.add(object.toString()); }