From ab35ac8b769b2d9816dffb33a64f2c6f7bd5dd6e Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期四, 05 九月 2024 17:05:55 +0800 Subject: [PATCH] 风行网页版爬虫 --- src/main/java/com/yeshi/buwan/job/RankJob.java | 79 +++++++++++++++++++++++++++++++++------ 1 files changed, 66 insertions(+), 13 deletions(-) diff --git a/src/main/java/com/yeshi/buwan/job/RankJob.java b/src/main/java/com/yeshi/buwan/job/RankJob.java index 5066e31..3e35723 100644 --- a/src/main/java/com/yeshi/buwan/job/RankJob.java +++ b/src/main/java/com/yeshi/buwan/job/RankJob.java @@ -3,22 +3,16 @@ import com.google.gson.Gson; import com.xxl.job.core.biz.model.ReturnT; import com.xxl.job.core.handler.annotation.XxlJob; -import com.yeshi.buwan.domain.system.DetailSystem; -import com.yeshi.buwan.domain.system.DetailSystemConfig; -import com.yeshi.buwan.domain.system.SystemConfig; -import com.yeshi.buwan.service.imp.DetailSystemConfigService; -import com.yeshi.buwan.service.imp.SystemService; import com.yeshi.buwan.service.inter.system.SystemConfigService; -import com.yeshi.buwan.util.EHCacheManager; import com.yeshi.buwan.util.rank.IqiyiRankUtil; -import net.sf.json.JSONObject; +import com.yeshi.buwan.util.rank.TencentRankUtil; +import org.json.JSONArray; +import org.json.JSONObject; import org.springframework.stereotype.Component; -import org.yeshi.utils.AppMarketUtil; -import org.yeshi.utils.StringUtil; import javax.annotation.Resource; -import java.util.List; -import java.util.Map; +import java.io.IOException; +import java.util.*; //10409568 @Component @@ -28,18 +22,77 @@ @Resource private SystemConfigService systemConfigService; + private static List<String> concatRank(int count, List<String>... ranks) { + List<String> flist = new ArrayList<>(); + Set<String> keys=new HashSet<>(); + for (int i = 0; i < count; i++) { + for (List<String> rank : ranks) { + if (rank == null) { + continue; + } + if (rank.size() > i) { + if (!keys.contains(rank.get(i).replace(" ",""))) { + flist.add(rank.get(i)); + keys.add(rank.get(i).replace(" ","")); + } + } + if (flist.size() >= count) { + break; + } + } + if (flist.size() >= count) { + break; + } + } + return flist; + } - //鎵撳紑鍗庝负搴旂敤甯傚満鐨勫箍鍛� + + //鐖卞鑹烘帓琛� @XxlJob("rank-iqiyi-update") public ReturnT<String> updateRank(String params) throws Exception { Map<String, List<String>> map = IqiyiRankUtil.getRank(10); + Map<String, List<String>> tencentMap = TencentRankUtil.getRank(10); + Map<String,Integer> typeRank=new HashMap<>(); + typeRank.put("鐑悳",0); + typeRank.put("鐢佃鍓�",1); + typeRank.put("鍔ㄦ极",2); + typeRank.put("鐢靛奖",3); + typeRank.put("缁艰壓",4); + + Map<String,List<String>> fmap=new TreeMap<>(new Comparator<String>() { + @Override + public int compare(String o1, String o2) { + return typeRank.get(o1) - typeRank.get(o2); + } + }); + fmap.put("鐑悳", concatRank(10, map.get("鎬绘"), tencentMap.get("鐑悳"))); + fmap.put("鐢佃鍓�", concatRank(10, map.get("鐢佃鍓�"), tencentMap.get("鐢佃鍓�"))); + fmap.put("鍔ㄦ极", tencentMap.get("鍔ㄦ极")); + fmap.put("鐢靛奖", concatRank(10, map.get("鐢靛奖"), tencentMap.get("鐢靛奖"))); + fmap.put("缁艰壓", concatRank(10, map.get("缁艰壓"), tencentMap.get("缁艰壓"))); + if (map != null && map.size() > 0) { + String json = new Gson().toJson(fmap); + systemConfigService.setValue("searchRank", json); + } + return ReturnT.SUCCESS; + } + + + //鐖卞鑹烘帓琛� + @XxlJob("rank-tencent-update") + public ReturnT<String> updateTencentRank(String params) throws Exception { + Map<String, List<String>> map = TencentRankUtil.getRank(10); if (map != null && map.size() > 0) { String json = new Gson().toJson(map); systemConfigService.setValue("searchRank", json); - } return ReturnT.SUCCESS; } + public static void main(String[] args) throws Exception { + new RankJob().updateRank(""); + } + } -- Gitblit v1.8.0