采集北京市政百姓信件内容的具体步骤

1、新建一个能够存储数据的文件夹

2、进入到edu1文件夹里面,将webmagic所需要的jar包上传上去

(压缩包网址在这里:https://github.com/code4craft/webmagic/releases/tag/WebMagic-0.7.3)

如图所示:

之后将jar包解压:

tar -zxvf webmagic-0.7.3-all.tar.gz

它压缩好之后,是出来了一堆jar包;

3、在Eclipse新建项目

然后next-->finish;

之后,右键pachong1的项目名,新建一个名为libs的文件夹:

4、将解压出来的jar包放置到libs文件夹目录下

之后选中所有的jar包,进行如下操作:

Add Path;

5、新建一个名为my.webmagic的包

6、在这个新建的包下面,新建一个名为Getgov的class的类

7、代码的编写

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().setRetryTimes(3).setSleepTime(100);

    @Override
    public Site getSite() {
		// TODO Auto-generated method stub
		return site;
	}

	@Override
	public void process(Page page) {
		// TODO Auto-generated method stub
		 page.putField("allhtml", page.getHtml().toString());
		      String urlstr = null;
               for (int i = 1; i < 2702; i++) {
               	urlstr = "http://rexian.beijing.gov.cn/default/com.web.index.moreNewLetterQuery.flow?PageCond/currentPage="
                    + i + "&type=nextPage";
                    page.addTargetRequest(urlstr);
		            page.addTargetRequests(page.getHtml().links()
		                     .regex("(com.web.\\w+.\\w+.flow\\?originalId=\\w+)").all());}
		
	}
	
	public static void main(String[] args) {
		       Spider.create(new Getgov())
		                .addUrl("http://rexian.beijing.gov.cn/default/com.web.index.moreNewLetterQuery.flow?type=firstPage")
		                .addPipeline(new FilePipeline("/root/data/edu1"))
		                .setScheduler(new FileCacheQueueScheduler("/root/data/edu1"))
		                .thread(5)
		                .run();}

}

将上面这段代码放入到新建的Getgov的类文件中:

然后运行这个文件:

Run As--->Java Application即启动;

posted @ 2023-09-04 23:17  yesyes1  阅读(19)  评论(0编辑  收藏  举报