今天继续学习webmagic爬虫
通过老师给的学习资料学习后,对webmagic爬虫基本有了了解,当时对site方法有点模糊,今天也终于搞明白了,感觉就像模拟了一个用户一样,对一个网站的框架还是不是很了解,所以还是不太理解,那些cookie,host,UserAgent,和header是什么,不过我以后会搞明白,今天准备进行编码实际练习,进行一个网站的爬取。
这是爬取前十页信件目录一样的网页,还不清楚怎么获取信件内容url,我会继续努力
package my.webmagic; import us.codecraft.webmagic.Page; import us.codecraft.webmagic.Site; import us.codecraft.webmagic.Spider; import us.codecraft.webmagic.pipeline.FilePipeline; import us.codecraft.webmagic.processor.PageProcessor; import us.codecraft.webmagic.scheduler.FileCacheQueueScheduler; public class Getgov implements PageProcessor{ private Site site=Site.me().setRetrySleepTime(3).setSleepTime(100); /** * @param args */ public Site getSite() { // TODO Auto-generated method stub return site; } public void process(Page page) { // TODO Auto-generated method stub page.putField("allhtml",page.getHtml().toString()); String urlstr=null; for(int i=2;i<=10;i++){ urlstr="http://www.beijing.gov.cn/so/s?qt=%E4%BF%A1%E4%BB%B6&tab=all&siteCode=1100000088&page="+i; page.addTargetRequest(urlstr); } } public static void main(String[] args) { Spider.create(new Getgov()) .addUrl("http://www.beijing.gov.cn/so/s?qt=%E4%BF%A1%E4%BB%B6&tab=all&siteCode=1100000088&page=1") .addPipeline(new FilePipeline("./")) .setScheduler(new FileCacheQueueScheduler("./")) .thread(5) .run(); System.out.println("完成"); } }