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

yem xiug

parent 5983814e
...@@ -8,4 +8,8 @@ ...@@ -8,4 +8,8 @@
<PackageReference Include="VTX.FW" Version="1.0.0" /> <PackageReference Include="VTX.FW" Version="1.0.0" />
</ItemGroup> </ItemGroup>
<ItemGroup>
<ProjectReference Include="..\EduSpider.Utility\EduSpider.Utility.csproj" />
</ItemGroup>
</Project> </Project>
...@@ -6,7 +6,7 @@ using System.Threading.Tasks; ...@@ -6,7 +6,7 @@ using System.Threading.Tasks;
namespace EduSpider.Repository namespace EduSpider.Repository
{ {
public class StudentRepository : B public class StudentRepository
{ {
} }
} }
...@@ -45,7 +45,7 @@ ...@@ -45,7 +45,7 @@
<PackageReference Include="SqlSugarCore" Version="5.0.8.3" /> <PackageReference Include="SqlSugarCore" Version="5.0.8.3" />
<PackageReference Include="System.Data.SqlClient" Version="4.8.3" /> <PackageReference Include="System.Data.SqlClient" Version="4.8.3" />
<PackageReference Include="System.Drawing.Common" Version="6.0.0" /> <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>
<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.Model.Entity;
using EduSpider.Repository; using EduSpider.Repository;
using EduSpider.Utility.Enum;
using Newtonsoft.Json.Linq; using Newtonsoft.Json.Linq;
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
...@@ -26,6 +27,7 @@ namespace EduSpider.Spiders.ClassInRule ...@@ -26,6 +27,7 @@ namespace EduSpider.Spiders.ClassInRule
/// </summary> /// </summary>
public async void RunCourse(string cookie) public async void RunCourse(string cookie)
{ {
int perpage = 20;
var request = Utility.HttpHelper.GenerateHttp(cookie); var request = Utility.HttpHelper.GenerateHttp(cookie);
string paramStr =string.Format( "page={0}&perpage=20&courseState=1","1"); 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"); var content = new StringContent(paramStr, System.Text.Encoding.UTF8, "application/x-www-form-urlencoded");
...@@ -40,6 +42,16 @@ namespace EduSpider.Spiders.ClassInRule ...@@ -40,6 +42,16 @@ namespace EduSpider.Spiders.ClassInRule
{ {
JObject dataObj = JObject.Parse(rootObj.GetString("data")); JObject dataObj = JObject.Parse(rootObj.GetString("data"));
var totalNum = dataObj.GetInt("totalCourseNum"); 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")); JArray courseArray = JArray.Parse(dataObj.GetString("courseList"));
if (courseArray != null && courseArray.Count > 0) if (courseArray != null && courseArray.Count > 0)
{ {
...@@ -50,9 +62,25 @@ namespace EduSpider.Spiders.ClassInRule ...@@ -50,9 +62,25 @@ namespace EduSpider.Spiders.ClassInRule
{ {
courseId = courseObj.GetInt("courseId"), courseId = courseObj.GetInt("courseId"),
courseName=courseObj.GetString("courseName"), 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