Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
E
EduSpider
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
viitto
EduSpider
Commits
0c562a52
Commit
0c562a52
authored
May 24, 2022
by
黄奎
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
页面修改
parent
5872ce1a
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
127 additions
and
187 deletions
+127
-187
.dtbcache.v2
.vs/EduSpider/DesignTimeBuild/.dtbcache.v2
+0
-0
ICourseRepository.cs
EduSpider.IRepository/ICourseRepository.cs
+2
-2
Course.cs
EduSpider.Model/Entity/Course.cs
+14
-1
BaseRepository.cs
EduSpider.Repository/Base/BaseRepository.cs
+4
-0
CourseRepository.cs
EduSpider.Repository/CourseRepository.cs
+2
-2
HttpHelper.cs
EduSpider.Utility/HttpHelper.cs
+38
-177
CourseController.cs
EduSpider.WebApi/Controllers/CourseController.cs
+2
-2
EduSpider.sln
EduSpider.sln
+6
-0
EduSpider.csproj
EduSpider/EduSpider.csproj
+13
-0
ClassInFlow.cs
EduSpider/Spiders/ClassInRule/ClassInFlow.cs
+1
-2
StudentManager.cs
EduSpider/Spiders/ClassInRule/StudentManager.cs
+45
-1
No files found.
.vs/EduSpider/DesignTimeBuild/.dtbcache.v2
deleted
100644 → 0
View file @
5872ce1a
File deleted
EduSpider.IRepository/ICourseRepository.cs
View file @
0c562a52
...
...
@@ -12,13 +12,13 @@ namespace EduSpider.Repository
/// <summary>
/// 课程仓储接口
/// </summary>
public
interface
ICourseRepository
:
IDBRepository
<
Course
>,
IDependency
public
interface
ICourseRepository
:
IDBRepository
<
RB_
Course
>,
IDependency
{
/// <summary>
/// 批量新增课程
/// </summary>
/// <param name="courses"></param>
/// <returns></returns>
public
bool
BatchSetCourse
(
List
<
Course
>
courses
);
public
bool
BatchSetCourse
(
List
<
RB_
Course
>
courses
);
}
}
EduSpider.Model/Entity/Course.cs
View file @
0c562a52
...
...
@@ -8,8 +8,21 @@ namespace EduSpider.Model.Entity
/// </summary>
[
Serializable
]
[
DB
(
ConnectionName
=
"DefaultConnection"
)]
public
class
Course
public
class
RB_
Course
{
/// <summary>
/// 课程编号
/// </summary>
public
int
courseId
{
get
;
set
;
}
/// <summary>
/// 课程名称
/// </summary>
public
string
courseName
{
get
;
set
;
}
/// <summary>
/// 开始时间
/// </summary>
public
int
beginTime
{
get
;
set
;
}
}
}
EduSpider.Repository/Base/BaseRepository.cs
View file @
0c562a52
...
...
@@ -35,6 +35,10 @@ namespace EduSpider.Repository.Base
}
DBConnStr
=
VTX
.
FW
.
Helper
.
ConfigHelper
.
GetConnectionString
(
connKey
);
if
(
string
.
IsNullOrWhiteSpace
(
DBConnStr
))
{
DBConnStr
=
"server=192.168.10.214;user id=reborn;password=Reborn@2018;database=reborn_think;CharSet=utf8mb4; Convert Zero Datetime=true; "
;
}
}
...
...
EduSpider.Repository/CourseRepository.cs
View file @
0c562a52
...
...
@@ -11,14 +11,14 @@ namespace EduSpider.Repository
/// <summary>
/// 课程仓储层
/// </summary>
public
class
CourseRepository
:
BaseRepository
<
Course
>,
ICourseRepository
public
class
CourseRepository
:
BaseRepository
<
RB_
Course
>,
ICourseRepository
{
/// <summary>
/// 批量新增课程
/// </summary>
/// <param name="courses"></param>
/// <returns></returns>
public
bool
BatchSetCourse
(
List
<
Course
>
courses
)
public
bool
BatchSetCourse
(
List
<
RB_
Course
>
courses
)
{
bool
flag
;
flag
=
base
.
BatchInsert
(
courses
,
isReplace
:
true
);
...
...
EduSpider.Utility/HttpHelper.cs
View file @
0c562a52
This diff is collapsed.
Click to expand it.
EduSpider.WebApi/Controllers/CourseController.cs
View file @
0c562a52
...
...
@@ -23,8 +23,8 @@ namespace EduSpider.WebApi.Controllers
public
ApiResult
GetCoursePage
()
{
string
str
=
Utility
.
HttpHelper
.
GetClassQuery
();
return
ApiResult
.
Success
(
data
:
str
,
message
:
"成功!"
);
return
ApiResult
.
Success
(
data
:
""
,
message
:
"成功!"
);
}
}
}
EduSpider.sln
View file @
0c562a52
...
...
@@ -23,6 +23,8 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "EduSpider.Utility", "EduSpi
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "EduSpider", "EduSpider\EduSpider.csproj", "{DAC5E8C6-98DF-4B33-9E2C-452DDE54A5FA}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ConsoleApp1", "ConsoleApp1\ConsoleApp1.csproj", "{4FB5873A-A964-4D19-AC8E-BD72A66190BF}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
...
...
@@ -61,6 +63,10 @@ Global
{DAC5E8C6-98DF-4B33-9E2C-452DDE54A5FA}.Debug|Any CPU.Build.0 = Debug|Any CPU
{DAC5E8C6-98DF-4B33-9E2C-452DDE54A5FA}.Release|Any CPU.ActiveCfg = Release|Any CPU
{DAC5E8C6-98DF-4B33-9E2C-452DDE54A5FA}.Release|Any CPU.Build.0 = Release|Any CPU
{4FB5873A-A964-4D19-AC8E-BD72A66190BF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{4FB5873A-A964-4D19-AC8E-BD72A66190BF}.Debug|Any CPU.Build.0 = Debug|Any CPU
{4FB5873A-A964-4D19-AC8E-BD72A66190BF}.Release|Any CPU.ActiveCfg = Release|Any CPU
{4FB5873A-A964-4D19-AC8E-BD72A66190BF}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
...
...
EduSpider/EduSpider.csproj
View file @
0c562a52
...
...
@@ -31,6 +31,10 @@
<ItemGroup>
<PackageReference Include="DotnetSpider" Version="5.0.9" />
<PackageReference Include="Microsoft.Extensions.Configuration" Version="6.0.1" />
<PackageReference Include="Microsoft.Extensions.Configuration.Abstractions" Version="6.0.0" />
<PackageReference Include="Microsoft.Extensions.Configuration.FileExtensions" Version="6.0.0" />
<PackageReference Include="Microsoft.Extensions.Configuration.Json" Version="6.0.0" />
<PackageReference Include="OpenCvSharp4.Windows" Version="4.5.5.20211231" />
<PackageReference Include="Selenium.WebDriver" Version="4.1.0" />
<PackageReference Include="Selenium.WebDriver.ChromeDriver" Version="100.0.4896.6000" />
...
...
@@ -38,7 +42,16 @@
<PackageReference Include="Serilog.Sinks.Console" Version="3.1.1" />
<PackageReference Include="Serilog.Sinks.RollingFile" Version="3.3.0" />
<PackageReference Include="Serilog.Sinks.PeriodicBatching" Version="2.3.0" />
<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" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\EduSpider.IRepository\EduSpider.IRepository.csproj" />
<ProjectReference Include="..\EduSpider.Model\EduSpider.Model.csproj" />
<ProjectReference Include="..\EduSpider.Repository\EduSpider.Repository.csproj" />
</ItemGroup>
</Project>
EduSpider/Spiders/ClassInRule/ClassInFlow.cs
View file @
0c562a52
...
...
@@ -22,9 +22,8 @@ namespace TicketSpider.Spiders.ClassInRule
string
loginCookies
=
ClassInAccountManager
.
GetInstance
();
Console
.
WriteLine
(
"开始获取学员信息"
);
new
StudentManager
().
RunAsync
();
new
StudentManager
().
RunCourse
();
}
}
}
EduSpider/Spiders/ClassInRule/StudentManager.cs
View file @
0c562a52
using
EduSpider.Helpers
;
using
EduSpider.Model.Entity
;
using
EduSpider.Repository
;
using
Newtonsoft.Json.Linq
;
using
System
;
using
System.Collections.Generic
;
using
System.Linq
;
using
System.Net.Http
;
using
System.Text
;
using
System.Threading.Tasks
;
using
VTX.FW
;
using
VTX.FW.Helper
;
namespace
EduSpider.Spiders.ClassInRule
{
...
...
@@ -12,7 +17,7 @@ namespace EduSpider.Spiders.ClassInRule
{
public
async
void
RunAsync
()
{
var
request
=
HttpHelper
.
GenerateHttp
();
var
request
=
EduSpider
.
Helpers
.
HttpHelper
.
GenerateHttp
();
var
paramStr
=
"page=1&perpage=20&isdel=0"
;
var
content
=
new
StringContent
(
paramStr
,
System
.
Text
.
Encoding
.
UTF8
,
"application/x-www-form-urlencoded"
);
var
response
=
await
request
.
PostAsync
(
"https://console.eeo.cn/saasajax/student.ajax.php?action=getSchoolStudentListByPage"
,
content
);
...
...
@@ -20,6 +25,45 @@ namespace EduSpider.Spiders.ClassInRule
var
result
=
response
.
Content
.
ReadAsStringAsync
().
Result
;
}
/// <summary>
/// 获取课程列表
/// </summary>
public
async
void
RunCourse
()
{
var
request
=
EduSpider
.
Helpers
.
HttpHelper
.
GenerateHttp
();
var
paramStr
=
"page=1&perpage=20&courseState=1"
;
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
List
<
RB_Course
>();
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"
);
JArray
courseArray
=
JArray
.
Parse
(
dataObj
.
GetString
(
"courseList"
));
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"
),
});
}
}
}
}
ICourseRepository
courseRepository
=
new
CourseRepository
();
courseRepository
.
BatchSetCourse
(
list
);
Console
.
WriteLine
(
"result"
,
result
);
}
}
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment