diff --git a/webmagic-samples/src/main/java/us/codecraft/webmagic/annotation/samples/Blog.java b/webmagic-samples/src/main/java/us/codecraft/webmagic/annotation/samples/Blog.java new file mode 100644 index 0000000..c0890e1 --- /dev/null +++ b/webmagic-samples/src/main/java/us/codecraft/webmagic/annotation/samples/Blog.java @@ -0,0 +1,13 @@ +package us.codecraft.webmagic.annotation.samples; + +/** + * @author yihua.huang@dianping.com
+ * @date: 13-8-2
+ * Time: 上午8:10
+ */ +public interface Blog { + + public String getTitle(); + + public String getContent(); +} diff --git a/webmagic-samples/src/main/java/us/codecraft/webmagic/annotation/samples/IteyeBlog.java b/webmagic-samples/src/main/java/us/codecraft/webmagic/annotation/samples/IteyeBlog.java index 8fbf089..09a1d5b 100644 --- a/webmagic-samples/src/main/java/us/codecraft/webmagic/annotation/samples/IteyeBlog.java +++ b/webmagic-samples/src/main/java/us/codecraft/webmagic/annotation/samples/IteyeBlog.java @@ -11,7 +11,7 @@ import us.codecraft.webmagic.annotation.TargetUrl; * Time: 上午7:52
*/ @TargetUrl("http://dengminhui.iteye.com/blog/*") -public class IteyeBlog { +public class IteyeBlog implements Blog{ @ExtractBy("//title") private String title; @@ -31,4 +31,11 @@ public class IteyeBlog { Spider.create(Site.me().addStartUrl("http://dengminhui.iteye.com/blog"),IteyeBlog.class).run(); } + public String getTitle() { + return title; + } + + public String getContent() { + return content; + } } diff --git a/webmagic-samples/src/main/java/us/codecraft/webmagic/annotation/samples/OschinaBlog.java b/webmagic-samples/src/main/java/us/codecraft/webmagic/annotation/samples/OschinaBlog.java new file mode 100644 index 0000000..817c1aa --- /dev/null +++ b/webmagic-samples/src/main/java/us/codecraft/webmagic/annotation/samples/OschinaBlog.java @@ -0,0 +1,41 @@ +package us.codecraft.webmagic.annotation.samples; + +import us.codecraft.webmagic.Site; +import us.codecraft.webmagic.Spider; +import us.codecraft.webmagic.annotation.ExtractBy; +import us.codecraft.webmagic.annotation.TargetUrl; + +/** + * @author yihua.huang@dianping.com
+ * @date: 13-8-2
+ * Time: 上午7:52
+ */ +@TargetUrl("http://my.oschina.net/flashsword/blog/\\d+") +public class OschinaBlog implements Blog{ + + @ExtractBy("//title") + private String title; + + @ExtractBy(value = "div.BlogContent",type = ExtractBy.Type.Css) + private String content; + + @Override + public String toString() { + return "OschinaBlog{" + + "title='" + title + '\'' + + ", content='" + content + '\'' + + '}'; + } + + public static void main(String[] args) { + Spider.create(Site.me().addStartUrl("http://my.oschina.net/flashsword/blog"),OschinaBlog.class).run(); + } + + public String getTitle() { + return title; + } + + public String getContent() { + return content; + } +}