From ba0f9d6310e475eb4f55537b26fd8da4a6af1e76 Mon Sep 17 00:00:00 2001
From: Fengshaoyuan <1914442689@qq.com>
Date: Wed, 22 May 2024 08:46:52 +0800
Subject: [PATCH] =?UTF-8?q?1.=E6=89=A9=E5=B1=95Biquka2?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Classes/ChapterBiquka2Class.cs | 94 ++++++++++++++++++++++++++++++++
Classes/ChapterQiubiqugeClass.cs | 2 -
MainForm.Designer.cs | 1 +
MainForm.cs | 5 ++
4 files changed, 100 insertions(+), 2 deletions(-)
create mode 100644 Classes/ChapterBiquka2Class.cs
diff --git a/Classes/ChapterBiquka2Class.cs b/Classes/ChapterBiquka2Class.cs
new file mode 100644
index 0000000..73e5abd
--- /dev/null
+++ b/Classes/ChapterBiquka2Class.cs
@@ -0,0 +1,94 @@
+using HtmlAgilityPack;
+using HtmlToTxtWFA.Utils;
+using System.Collections.Generic;
+using System.Text;
+using System.Windows.Forms;
+
+namespace HtmlToTxtWFA.Classes
+{
+ ///
+ /// 章节 Biquka2
+ ///
+ public class ChapterBiquka2Class : ChapterClass
+ {
+ public ChapterBiquka2Class() { }
+
+ public ChapterBiquka2Class(HtmlNode aElement)
+ {
+ // 第一章 梦
+ this.Label = aElement.InnerText;
+ this.Url = aElement.GetAttributeValue("href", "");
+ }
+
+ public override List ReadChapterList(string HOST, string serialNumber)
+ {
+ // 从url中加载
+ // https://www.biquka2.com/Html/Book/163/163912/
+ HtmlAgilityPack.HtmlDocument doc = new HtmlWeb().LoadFromWebAsync(HOST + "/Html/Book/" + serialNumber + "/", Encoding.UTF8).Result;
+ if (doc == null)
+ {
+ MessageBox.Show("获取章节列表异常");
+ return new List();
+ }
+
+ HtmlNodeCollection conNodes = doc.DocumentNode.SelectNodes("//*[@id=\"list\"]");
+ if (conNodes == null || conNodes.Count == 0)
+ {
+ MessageBox.Show("获取章节列表异常");
+ return new List();
+ }
+
+ HtmlNodeCollection aNodes = conNodes[0].SelectNodes(".//a");
+ if (aNodes == null || aNodes.Count == 0)
+ {
+ MessageBox.Show("获取章节列表异常");
+ return new List();
+ }
+
+ bool isStarted = false;
+ List chapterList = new List();
+ for (int c = 0; c < aNodes.Count; c++)
+ {
+ // 第一章 梦
+ HtmlNode aNode = aNodes[c];
+ if (aNode == null)
+ {
+ continue;
+ }
+
+ ChapterBiquka2Class chapterClass = new ChapterBiquka2Class(aNode);
+ if (!chapterClass.IsNull())
+ {
+ chapterList.Add(chapterClass);
+ if (!isStarted)
+ {
+ isStarted = true;
+ }
+ }
+ }
+
+ return chapterList;
+ }
+
+ public override void ToTxt(string filePath, string HOST)
+ {
+ // 从url中加载
+ // https://www.biquka2.com/Html/Book/163/163912/458850.html
+ HtmlAgilityPack.HtmlDocument doc = new HtmlWeb().LoadFromWebAsync(HOST + this.Url, Encoding.UTF8).Result;
+ if (doc == null)
+ {
+ return;
+ }
+
+ HtmlNodeCollection conNodes = doc.DocumentNode.SelectNodes("//div[@id='content']");
+ if (conNodes == null || conNodes.Count == 0)
+ {
+ return;
+ }
+
+ TxtUtil.Write(filePath, " " + this.Label + "\n"
+ + conNodes[0].InnerHtml.Replace(" ", "").Split("网页版章节内容慢,请下载好阅小说app阅读最新内容")[0].Replace("
", "\n")
+ );
+ }
+ }
+}
diff --git a/Classes/ChapterQiubiqugeClass.cs b/Classes/ChapterQiubiqugeClass.cs
index dcd91df..b5acf0e 100644
--- a/Classes/ChapterQiubiqugeClass.cs
+++ b/Classes/ChapterQiubiqugeClass.cs
@@ -1,8 +1,6 @@
using HtmlAgilityPack;
using HtmlToTxtWFA.Utils;
using System.Collections.Generic;
-using System.IO;
-using System.Net.Http;
using System.Text;
using System.Windows.Forms;
diff --git a/MainForm.Designer.cs b/MainForm.Designer.cs
index 5e3dc23..04dd883 100644
--- a/MainForm.Designer.cs
+++ b/MainForm.Designer.cs
@@ -164,6 +164,7 @@ namespace HtmlToTxtWFA
"7小说",
"i笔趣阁",
"qiu笔趣阁",
+ "八戒中文",
"读趣网",
"键盘小说网",
"乐文小说网",
diff --git a/MainForm.cs b/MainForm.cs
index 1892f02..3d868ea 100644
--- a/MainForm.cs
+++ b/MainForm.cs
@@ -19,6 +19,7 @@ namespace HtmlToTxtWFA
["7小说"] = "https://www.7qs.org",
["i笔趣阁"] = "http://www.ibiquge.cc",
["qiu笔趣阁"] = "https://www.qiubiquge.com",
+ ["八戒中文"] = "https://www.biquka2.com",
["读趣网"] = "https://www.xdu7.la",
["键盘小说网"] = "http://www.janpn.info",
["乐文小说网"] = "https://www.xlewen.com/",
@@ -131,6 +132,10 @@ namespace HtmlToTxtWFA
{
chapterList = new ChapterQiubiqugeClass().ReadChapterList(host, serialNumber);
}
+ else if (platform.Equals("八戒中文"))
+ {
+ chapterList = new ChapterBiquka2Class().ReadChapterList(host, serialNumber);
+ }
else if (platform.Equals("读趣网"))
{
chapterList = new ChapterXdu7Class().ReadChapterList(host, serialNumber);
--
Gitee