Search in sources :

Example 11 with VSCrawler

use of com.virjar.vscrawler.core.VSCrawler in project vscrawler by virjar.

the class VSCrawlerManager method init.

private synchronized void init() {
    if (hasInit) {
        return;
    }
    // cannot auto inject by spring framework,if there no implementations ,a exception will be throw
    Map<String, CrawlerBuilder> beansOfType = webApplicationContext.getBeansOfType(CrawlerBuilder.class);
    crawlerBuilderList.addAll(beansOfType.values());
    // load system crawler
    for (CrawlerBuilder crawlerBuilder : crawlerBuilderList) {
        VSCrawler vsCrawler = crawlerBuilder.build();
        allCrawler.put(vsCrawler.getVsCrawlerContext().getCrawlerName(), new CrawlerBean(vsCrawler));
    }
    // load jar file
    // find jar file root dir
    File jarDir = new File(calcHotJarDir());
    moveEmbedCrawler(jarDir);
    loadHotJar(jarDir);
    hasInit = true;
}
Also used : VSCrawler(com.virjar.vscrawler.core.VSCrawler) CrawlerBuilder(com.virjar.vscrawler.web.api.CrawlerBuilder) CrawlerBean(com.virjar.vscrawler.web.model.CrawlerBean) JarFile(java.util.jar.JarFile) ZipFile(java.util.zip.ZipFile) MultipartFile(org.springframework.web.multipart.MultipartFile)

Aggregations

VSCrawler (com.virjar.vscrawler.core.VSCrawler)11 RequestMapping (org.springframework.web.bind.annotation.RequestMapping)5 ResponseBody (org.springframework.web.bind.annotation.ResponseBody)5 GrabResult (com.virjar.vscrawler.core.processor.GrabResult)3 Seed (com.virjar.vscrawler.core.seed.Seed)3 VSCrawlerContext (com.virjar.vscrawler.core.VSCrawlerContext)2 CrawlerSession (com.virjar.vscrawler.core.net.session.CrawlerSession)2 SeedProcessor (com.virjar.vscrawler.core.processor.SeedProcessor)2 CrawlerBuilder (com.virjar.vscrawler.web.api.CrawlerBuilder)2 CrawlerBean (com.virjar.vscrawler.web.model.CrawlerBean)2 JSONObject (com.alibaba.fastjson.JSONObject)1 Function (com.google.common.base.Function)1 SegmentResolver (com.virjar.vscrawler.core.seed.SegmentResolver)1 SpringContextAware (com.virjar.vscrawler.web.api.SpringContextAware)1 File (java.io.File)1 IOException (java.io.IOException)1 JarFile (java.util.jar.JarFile)1 ZipFile (java.util.zip.ZipFile)1 DateTime (org.joda.time.DateTime)1 MultipartFile (org.springframework.web.multipart.MultipartFile)1