//package com.trs.project.spider;
//
//import com.trs.project.entity.EmpPolicy;
//import lombok.extern.slf4j.Slf4j;
//import org.apache.commons.lang3.StringUtils;
//import org.springframework.beans.factory.annotation.Autowired;
//import org.springframework.stereotype.Component;
//import us.codecraft.webmagic.Page;
//import us.codecraft.webmagic.Site;
//import us.codecraft.webmagic.Spider;
//import us.codecraft.webmagic.processor.PageProcessor;
//
//import java.util.List;
//
//@Slf4j
//@Component
//public class EmpPolicySpider implements PageProcessor {
//
//
//    @Autowired
//    private EmpPolicyPipeline empPolicyPipeline;
//
//    private String url = "https://kjt.nmg.gov.cn/ztzl/kjhqzc/index.html";
//    public static final String URL_LIST = "https://kjt.nmg.gov.cn/ztzl/kjhqzc/index_/[0-9]+.html";
//
//    public void execute() {
//        Spider.create(new EmpPolicySpider())
//                .addUrl(url)
//                .addPipeline(empPolicyPipeline)
//                .run();
//    }
//
//    public void process(Page page) {
//        if (page.getUrl().regex("https://kjt.nmg.gov.cn/ztzl/kjhqzc/index*").match()) {
//            List<String> links = page.getHtml().links().regex(".*\\d+\\_\\d+\\.html").all();
//            for (int i = 1; i < 3; i++) {
//                links.add("https://kjt.nmg.gov.cn/ztzl/kjhqzc/index_"+i+".html");
//            }
//
//            page.addTargetRequests(links);
//        } else {
//            String doctitle = page.getHtml().xpath("//*[@id=\"pc_version\"]/div[2]/div/div[2]/h1/text()").get();
//            String docurl = page.getUrl().get();
//            String docsourceAndPubDate = page.getHtml().xpath("//*[@id=\"pc_version\"]/div[2]/div/div[2]/div[1]/span/text()/text()").get();
//            String[] split = docsourceAndPubDate.split("：");
//            String docsource = "";
//            String pubDate = "";
//            if(split.length>=2){
//                docsource = split[1].substring(0,split[1].indexOf("发布")-1);
//                pubDate = split[2].substring(0,split[2].length()-1);
//            }
//
//            String docHtmlCon = page.getHtml().xpath("//*[@id=\"Zoom\"]/div[1]").toString();
//            EmpPolicy empPolicy = new EmpPolicy();
//            if(StringUtils.isNotBlank(docurl))
//                empPolicy.setId(docurl.substring(docurl.lastIndexOf("t2"),docurl.lastIndexOf(".")));
//            empPolicy.setDoctitle(doctitle);
//            empPolicy.setDocurl(docurl);
//            empPolicy.setDochtmlcon(docHtmlCon);
//            empPolicy.setDocsource(docsource);
//            empPolicy.setPubdate(pubDate);
//            page.putField("empPolicy",empPolicy);
//        }
//    }
//
//    private Site site = Site.me()
//            .setCharset("utf8")        //设置编码
//            .setTimeOut(10000)         //设置超时时间，单位是ms毫秒
//            .setRetrySleepTime(3000)   //设置重试间隔时间，
//            .setSleepTime(3)           //设置重试次数
//            ;
//
//    public Site getSite() {
//        return site;
//    }
//}
