Commit 8653d3f4 authored by 黄奎's avatar 黄奎

yem xiug

parent 5983814e
......@@ -8,4 +8,8 @@
<PackageReference Include="VTX.FW" Version="1.0.0" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\EduSpider.Utility\EduSpider.Utility.csproj" />
</ItemGroup>
</Project>
......@@ -6,7 +6,7 @@ using System.Threading.Tasks;
namespace EduSpider.Repository
{
public class StudentRepository : B
public class StudentRepository
{
}
}
......@@ -45,7 +45,7 @@
<PackageReference Include="SqlSugarCore" Version="5.0.8.3" />
<PackageReference Include="System.Data.SqlClient" Version="4.8.3" />
<PackageReference Include="System.Drawing.Common" Version="6.0.0" />
<PackageReference Include="VTX.FW" Version="1.0.0" />
<PackageReference Include="VTX.FW" Version="1.1.0" />
</ItemGroup>
<ItemGroup>
......
using EduSpider.Model.Entity;
using EduSpider.Repository;
using EduSpider.Utility.Enum;
using Newtonsoft.Json.Linq;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net.Http;
using System.Text;
using VTX.FW.Helper;
namespace EduSpider.Spiders.ClassInRule
{
/// <summary>
/// 课程关联
/// </summary>
public class CourseManager
{
/// <summary>
/// 获取课程列表
/// </summary>
public async void RunCourse(string cookie)
{
int perpage = 20;
var request = Utility.HttpHelper.GenerateHttp(cookie);
string paramStr = string.Format("page={0}&perpage={1}&courseState=1", "1", perpage);
var content = new StringContent(paramStr, System.Text.Encoding.UTF8, "application/x-www-form-urlencoded");
var response = await request.PostAsync("https://console.eeo.cn/saasajax/course.ajax.php?action=getCourseList", content);
var result = response.Content.ReadAsStringAsync().Result;
List<RB_Course> list = new();
if (!string.IsNullOrWhiteSpace(result))
{
JObject rootObj = JObject.Parse(result);
if (!string.IsNullOrWhiteSpace(rootObj.GetString("data")))
{
JObject dataObj = JObject.Parse(rootObj.GetString("data"));
var totalNum = dataObj.GetInt("totalCourseNum");
var pageCount = 1;
if (totalNum % perpage == 0)
{
pageCount = totalNum % perpage;
}
else
{
pageCount = totalNum % perpage + 1;
}
if (totalNum > perpage)
{
}
}
}
ICourseRepository courseRepository = new CourseRepository();
courseRepository.BatchSetCourse(list);
Console.WriteLine("result", result);
}
public List<RB_Course> ParseJson(string data)
{
//dataObj.GetString("courseList")
List<RB_Course> list = new List<RB_Course>();
JArray courseArray = JArray.Parse(data);
if (courseArray != null && courseArray.Count > 0)
{
foreach (var jItem in courseArray)
{
JObject courseObj = JObject.Parse(jItem.ToString());
list.Add(new RB_Course()
{
courseId = courseObj.GetInt("courseId"),
courseName = courseObj.GetString("courseName"),
beginTime = ConvertHelper.UnixToDateTime(courseObj.GetInt("beginTime")),
completeNum = courseObj.GetInt("completeNum"),
totalClassNum = courseObj.GetInt("totalClassNum"),
expiryTime = ConvertHelper.UnixToDateTime(courseObj.GetInt("expiryTime")),
liveNum = courseObj.GetInt("liveNum"),
recordNum = courseObj.GetInt("recordNum"),
openNum = courseObj.GetInt("openNum"),
studentNum = courseObj.GetInt("studentNum"),
auditNum = courseObj.GetInt("auditNum"),
teacherNum = courseObj.GetInt("teacherNum"),
courseStatus = (CourseStatusEnum)courseObj.GetInt("courseStatus"),
webCast = courseObj.GetString("webCast"),
teacherId = courseObj.GetInt("teacherId"),
teacherAccount = courseObj.GetString("teacherAccount"),
teacherUid = courseObj.GetInt("teacherUid"),
teacherName = courseObj.GetString("teacherName"),
teacherLogo = courseObj.GetString("teacherLogo"),
courseType = (CourseTypeEnum)courseObj.GetInt("courseType"),
}); ;
}
}
return list;
}
}
}
using EduSpider.Model.Entity;
using EduSpider.Repository;
using EduSpider.Utility.Enum;
using Newtonsoft.Json.Linq;
using System;
using System.Collections.Generic;
......@@ -26,6 +27,7 @@ namespace EduSpider.Spiders.ClassInRule
/// </summary>
public async void RunCourse(string cookie)
{
int perpage = 20;
var request = Utility.HttpHelper.GenerateHttp(cookie);
string paramStr =string.Format( "page={0}&perpage=20&courseState=1","1");
var content = new StringContent(paramStr, System.Text.Encoding.UTF8, "application/x-www-form-urlencoded");
......@@ -40,6 +42,16 @@ namespace EduSpider.Spiders.ClassInRule
{
JObject dataObj = JObject.Parse(rootObj.GetString("data"));
var totalNum = dataObj.GetInt("totalCourseNum");
var pageCount = 1;
if (totalNum % 20 == 0)
{
pageCount = totalNum % 20;
}
else
{
pageCount = totalNum % 20+1;
}
if(totalNum>20)
JArray courseArray = JArray.Parse(dataObj.GetString("courseList"));
if (courseArray != null && courseArray.Count > 0)
{
......@@ -50,9 +62,25 @@ namespace EduSpider.Spiders.ClassInRule
{
courseId = courseObj.GetInt("courseId"),
courseName=courseObj.GetString("courseName"),
beginTime=courseObj.GetInt("beginTime"),
});
beginTime= ConvertHelper.UnixToDateTime(courseObj.GetInt("beginTime")),
completeNum = courseObj.GetInt("completeNum"),
totalClassNum = courseObj.GetInt("totalClassNum"),
expiryTime = ConvertHelper.UnixToDateTime(courseObj.GetInt("expiryTime")),
liveNum = courseObj.GetInt("liveNum"),
recordNum = courseObj.GetInt("recordNum"),
openNum = courseObj.GetInt("openNum"),
studentNum = courseObj.GetInt("studentNum"),
auditNum = courseObj.GetInt("auditNum"),
teacherNum = courseObj.GetInt("teacherNum"),
courseStatus = (CourseStatusEnum)courseObj.GetInt("courseStatus"),
webCast = courseObj.GetString("webCast"),
teacherId = courseObj.GetInt("teacherId"),
teacherAccount = courseObj.GetString("teacherAccount"),
teacherUid = courseObj.GetInt("teacherUid"),
teacherName = courseObj.GetString("teacherName"),
teacherLogo = courseObj.GetString("teacherLogo"),
courseType = (CourseTypeEnum)courseObj.GetInt("courseType"),
});;
}
}
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment