jinxia.mo 3 年之前
父節點
當前提交
027731dd3f
共有 2 個文件被更改,包括 42 次插入34 次删除
  1. 39 32
      src/test/java/spider/CollegeData.java
  2. 3 2
      src/test/java/spider/YouZy.java

+ 39 - 32
src/test/java/spider/CollegeData.java

@@ -35,22 +35,24 @@ public class CollegeData {
     public void test() throws Exception {
         getMajorData();
         // 湖南
-        ApiUtil.getInstance().login();
-        collegeList();
+//        ApiUtil.getInstance().login();
+//        collegeList();
 //        generateNineDate();
 //         广东账号:18774924158,密码:123456
 //         ApiUtil.getInstance().login("18774924158", "123456",false);
-        // 湖北账号:18674898114, 密码:123456
-        // ApiUtil.getInstance().login("18674898114", "123456",false);
+//         湖北账号:18674898114, 密码:123456
+         ApiUtil.getInstance().login("18674898114", "123456",false);
         // 江西账号:13203226079,密码:123456
 //        ApiUtil.getInstance().login("13203226079", "123456",false);
-//        collegeList();
+        collegeList();
 //         getCategoryMajor();
     }
 //181
     public void collegeList() throws SQLException {
 //        int count = 0, total = 5000, page = 79;
-        int count = 0, total = 5000, page = 174;
+        Integer ProvinceId=17;
+        String Location="湖北";
+        int count = 0, total = 5000, page = 1;
         JSONObject res=new JSONObject();
         do {
             try {
@@ -77,14 +79,14 @@ public class CollegeData {
                      * 选科数据 xuanke(collegeId);
                      */
                     List<Integer> colledgeIds = Arrays.asList(
-                            1429,1430,1431,1550,1557,1554,1555,1453,1454,1567);
+                            2478,2479,2480,2462,2463,2464,2465,2791,2792,2793,2794,2796);
                     if(colledgeIds.contains(collegeId)){
-                        continue;
+//                        continue;
                     }
                     if(processColledgeCount>5){
                         //超过5个学校换个账号
-                        ApiUtil.getInstance().login();
-                        processColledgeCount=0;
+//                        ApiUtil.getInstance().login();
+//                        processColledgeCount=0;
                     }
 
                     List<Integer> liberalScienceList= Arrays.asList(0,1);
@@ -93,18 +95,18 @@ public class CollegeData {
                         /**
                          * 院校录取数据
                          */
-//                        for(Integer type:typeList){
-//                            byHistoryNew(collegeId,liberalScience,type);
-//                        }
+                        for(Integer type:typeList){
+                            byHistoryNew(collegeId,liberalScience,type,Location,ProvinceId);
+                        }
 
                         /**
                          * 专业录取数据
                          */
-//                        byCollege(collegeId,liberalScience,2);
+                        byCollege(collegeId,liberalScience,2,Location,ProvinceId);
                         /**
                          * 招生计划数据
                          */
-                        byCollege(collegeId,liberalScience,3);
+                        byCollege(collegeId,liberalScience,3,Location,ProvinceId);
                     }
                     processColledgeCount++;
 
@@ -154,7 +156,7 @@ public class CollegeData {
      * phase 批次 false integer
      * type 类型,普通省份不传或传1;312院校专业组省份(江苏、湖南、湖北、广东、福建):2021年以后数据传2,2020年以前数据传3 query false integer
      */
-    private void byHistoryNew(Integer collegeId,Integer liberalScience,Integer type) throws IOException {
+    private void byHistoryNew(Integer collegeId,Integer liberalScience,Integer type,String Location,Integer ProvinceId) throws IOException {
 //        ThreadUtil.safeSleep(2 * 1000);
 
         StringBuilder sb = new StringBuilder(host);
@@ -191,6 +193,8 @@ public class CollegeData {
             for (int i = 0; i < tdDatas.size(); i++) {
                 //sy_colledge_enroll_data
                 JSONObject row = tdDatas.getJSONObject(i);
+                row.put("provinceId",ProvinceId);
+                row.put("Location",Location);
                 row.put("type",type);
                 row.put("font_id",fontId);
                 row.put("font_value",fontValue);
@@ -253,24 +257,25 @@ public class CollegeData {
      * @param liberalScience
      * @throws IOException
      */
-    private void byCollege(Integer collegeId,Integer liberalScience,Integer queryType) throws IOException {
+    private void byCollege(Integer collegeId,Integer liberalScience,Integer queryType,String Location,Integer ProvinceId) throws IOException {
 //        ThreadUtil.safeSleep(2 * 1000);
 
         StringBuilder sb = new StringBuilder(host);
-        sb.append("/years");
-        sb.append("?queryType=").append(queryType);
-        sb.append("&provinceId=").append("18");
-        JSONObject res = ApiUtil.getInstance().httpSyncGet(sb.toString());
-//        System.out.println("data is "+res);
-        if(res.getInteger("error")==0){
+//        sb.append("/years");
+//        sb.append("?queryType=").append(queryType);
+//        sb.append("&provinceId=").append("18");
+//        JSONObject res = ApiUtil.getInstance().httpSyncGet(sb.toString());
+        JSONObject res = new JSONObject();
+//        if(res.getInteger("error")==0){
             //data
-            JSONArray dataYearArray = res.getJSONArray("data");
-            for (int j = 0; j < dataYearArray.size(); j++) {
-                JSONObject dataJSONObject = dataYearArray.getJSONObject(j);
+//            JSONArray dataYearArray = res.getJSONArray("data");
+//            for (int j = 0; j < dataYearArray.size(); j++) {
+//                JSONObject dataJSONObject = dataYearArray.getJSONObject(j);
 //                int yearLast= Calendar.getInstance().getWeekYear()-1;//补充上一个年份
 //                dataJSONObject.put("id",yearLast);
 //                dataJSONObject.put("year",yearLast);
-                Integer year = dataJSONObject.getInteger("year");
+//                Integer year = dataJSONObject.getInteger("year");
+                Integer year = 2021;
 
                 sb = new StringBuilder(host);
                 if(queryType==2){
@@ -279,7 +284,7 @@ public class CollegeData {
                     sb.append("/query/majorPlan/byCollege");
 
                 }
-                sb.append("?provinceId=").append("18");
+                sb.append("?provinceId=").append(ProvinceId);
                 sb.append("&collegeId=").append(collegeId);
                 sb.append("&liberalScience=").append(liberalScience);
                 sb.append("&year=").append(year);
@@ -325,6 +330,8 @@ public class CollegeData {
 //                            row.remove("LowestScore");
 //                            row.remove("LowestScore");
                         }
+                        row.put("ProvinceId",ProvinceId);//湖南
+                        row.put("Location",Location);//湖南
                         row.put("font_id",fontId);
                         row.put("font_value",fontValue);
                         row.put("update_time",new Date());
@@ -358,10 +365,10 @@ public class CollegeData {
                             e.printStackTrace();
                         }
                     }
-                }else {
-                    log.error("byCollege res is {}, request is {}  ",res,sb.toString());
-                }
-            }
+//                }else {
+//                    log.error("byCollege res is {}, request is {}  ",res,sb.toString());
+//                }
+//            }
         }
     }
 

文件差異過大導致無法顯示
+ 3 - 2
src/test/java/spider/YouZy.java


部分文件因文件數量過多而無法顯示