{"id":25738420,"url":"https://github.com/wumortal/dmhy-dataanalysis","last_synced_at":"2025-05-08T04:21:50.566Z","repository":{"id":120948397,"uuid":"183651380","full_name":"WuMortal/Dmhy-DataAnalysis","owner":"WuMortal","description":"「动漫花园」数据分析项目。","archived":false,"fork":false,"pushed_at":"2019-05-21T14:54:33.000Z","size":56,"stargazers_count":4,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"master","last_synced_at":"2025-04-27T04:05:15.240Z","etag":null,"topics":["csharp","dotnet"],"latest_commit_sha":null,"homepage":"","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/WuMortal.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-04-26T15:20:36.000Z","updated_at":"2023-11-21T15:13:17.000Z","dependencies_parsed_at":"2023-06-09T00:45:29.937Z","dependency_job_id":null,"html_url":"https://github.com/WuMortal/Dmhy-DataAnalysis","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WuMortal%2FDmhy-DataAnalysis","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WuMortal%2FDmhy-DataAnalysis/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WuMortal%2FDmhy-DataAnalysis/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WuMortal%2FDmhy-DataAnalysis/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/WuMortal","download_url":"https://codeload.github.com/WuMortal/Dmhy-DataAnalysis/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252997546,"owners_count":21837836,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["csharp","dotnet"],"created_at":"2025-02-26T07:30:27.780Z","updated_at":"2025-05-08T04:21:50.558Z","avatar_url":"https://github.com/WuMortal.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 介绍：\n\n该项目是之前用于分析 「动漫花园」 网站，现在分享给大家。\n\nNuget: [https://www.nuget.org/packages/WuMortal.Dmhy](https://www.nuget.org/packages/WuMortal.Dmhy)\n\n安装：`Install-Package WuMortal.Dmhy`\n\n项目使用 `HtmlAgilityPack` 解析「动漫花园」所爬取到的网页数据。\n\n# 开源地址：\n\n「动漫花园」数据分析：[进入查看](https://github.com/WuMortal/Dmhy-DataAnalysis)\n\n「动漫花园」WebAPI：DotNet Core 开发，[进入查看](https://github.com/WuMortal) 待整理中。\n\n「动漫花园」WebApp：Angular 6 开发， [进入查看](https://github.com/WuMortal) 待整理中。\n\nDmhy-Mobile：.NET + Angular.js 开发，[进入查看](https://github.com/WuMortal/Dmhy-Mobile) 。\n\n# 说明\n\n\u003e ps：数据获取过程可能需要梯子，所有方法都是异步的\n\n核心类：\n\n| 类              | 方法签名                                                                 | 说明                           |\n| ---------------- | ---------------------------------------------------------------------------- | -------------------------------- |\n| DmhyInfo         |                                                                              | 获取「动漫花园」一些信息 |\n|                  | Task\u003cDDramaIndex[]\u003e GetDramaIndexDataAsync();                                | 获取番剧索引数据         |\n|                  | Task\u003cDCategory[]\u003e GetDramaCategoryAsync();                                   | 获取番剧类别信息         |\n|                  | Task\u003cDTeam[]\u003e GetTeamAsync();                                                | 获取字幕组信息            |\n|                  | Task\u003cDHotPost[]\u003e GetHotPostAsync();                                          | 热门资源                     |\n| DmhyPost         |                                                                              | 该类负责不同参数获取帖子 |\n|                  | Task\u003cDPost[]\u003e GetTopsDataByCategoryIdAsync(long categoryId, long pageIndex); | 根据分类Id获取帖子       |\n|                  | Task\u003cDPost[]\u003e GetTopsDataByKeyWordAsync(string keyWord, long pageIndex);     | 根据关键词获取帖子      |\n|                  | Task\u003cDPost[]\u003e GetTopsDataByPageIndexAsync(long pageIndex);                   | 获取最新帖子               |\n|                  | Task\u003cDPost[]\u003e GetTopsDataByTeamIdAsync(long userId, long pageIndex);         | 获取字幕组的帖子         |\n|                  | Task\u003cDPost[]\u003e GetTopsDataByUserIdAsync(long userId, long pageIndex);         | 获取帖                        |\n| DmhyPostDetailed |                                                                              | 获取帖子详情和评论      |\n|                  | Task\u003cDPostDetailed\u003e GetPostDetailedAsync(string id);                         | 获取帖子详细内容         |\n|                  | Task\u003cDComment[]\u003e GetCommentsAsync(string postId);                            | 获取帖子的评论信息      |\n\nDmhyFactory：在不使用依赖注入的情况下需要使用该类生成所需要的核心类 ，包含：DmhyInfo、DmhyPost、DmhyPostDetailed\n\nDmhyExtensions：对 ASP.NET Core 支持，依赖注入。\n\n# v2.0 使用方法 ：\n\n\u003e 1. 调整项目结构，增加了单元测试、ASP.NET Core 测试项目。\n\u003e 2. 增加对 ASP.NET Core 支持， 增加依赖注入，同时保留非依赖注入的方式使用。\n\n首先安装 Nuget 包：`Install-Package WuMortal.Dmhy`\n\n## 常规使用\n\n``` cs\nusing (HttpClient client = new HttpClient())\n{\n\tDmhyFactory dmhyFactory = new DmhyFactory(client);\n\t//生成 dmhyInfo 类\n\tvar _dmhyInfo = dmhyFactory.BuilderDmhyInfo();\n\t//生成 dmhyPost 类\n\tvar _dmhyPost = dmhyFactory.BuilderDmhyPost();\n\t//调用该类获取热门帖子的方法\n\tvar hotPost =await _dmhyInfo.GetHotPostAsync();\n\t//获取最新帖子的方法\n\tvar newPost=await _dmhyPost.GetTopsDataByPageIndexAsync(1);\n}\n```\n\n## ASP.NET Core 使用\n\nv2.0 主要是提供了对 ASP.NET Core 的支持，所以在 ASP.NET Core 中使用是非常简单的。\n\n在 `Startup.cs` 类的 `ConfigureServices()` 方法中添加如下代码：\n\n``` cs\nservices.AddDmhyAnalysis();\n```\n\n之后在需要使用的地方直接注入即可，此处是获取热门帖子的案例：\n\n``` cs\n[Route(\"api/[controller]\")]\n[ApiController]\npublic class ValuesController : ControllerBase\n{\n\treadonly IDmhyInfo _dmhyInfo;\n\n\tpublic ValuesController(IDmhyInfo dmhyInfo)\n\t{\n\t\t_dmhyInfo = dmhyInfo;\n\t}\n\n\t[HttpGet]\n\tpublic async Task\u003cDHotPost[]\u003e Get()\n\t{\n\t\treturn await _dmhyInfo.GetHotPostAsync();\n\t}\n}\n```\n\n# v1.0 使用方法 ：\n\n推荐使用 v2.0\n\u003e Install-Package WuMortal.Dmhy -Version 0.1.3\n\nv1.0 项目地址：[https://github.com/WuMortal/Dmhy-DataAnalysis/tree/v1.0](https://github.com/WuMortal/Dmhy-DataAnalysis/tree/v1.0)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwumortal%2Fdmhy-dataanalysis","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwumortal%2Fdmhy-dataanalysis","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwumortal%2Fdmhy-dataanalysis/lists"}