\r\n", i);
+ spine += spineLine;
+
+
+ }
+ content = content.Replace("___MANIFEST___", manifest);
+ content = content.Replace("___SPINE___", spine);
+ File.WriteAllText(path, content);
+ }
+
+ static void loadTemplates()
+ {
+ if (tplIsLoaded) return;
+ tpl_cover = File.ReadAllText("./tpls/tpl_cover.html");
+ tpl_book_toc = File.ReadAllText("./tpls/tpl_book_toc.html");
+ tpl_chapter = File.ReadAllText("./tpls/tpl_chapter.html");
+ tpl_content = File.ReadAllText("./tpls/tpl_content.opf");
+ tpl_style = File.ReadAllText("./tpls/tpl_style.css");
+ tpl_toc = File.ReadAllText("./tpls/tpl_toc.ncx");
+ tplIsLoaded = true;
+ }
+
+ static void gen(string savePath)
+ {
+ string binPath = Directory.GetCurrentDirectory() + "/tools/kindlegen.exe";
+ string param = "content.opf -c1 -o book.mobi";
+ ProcessStartInfo p = null;
+ Process Proc;
+ p = new ProcessStartInfo(binPath, param);
+ p.WorkingDirectory = Directory.GetCurrentDirectory() + "/tmp";
+ Proc = Process.Start(p);//调用外部程序
+ Proc.WaitForExit();
+ if (File.Exists("./tmp/book.mobi")) {
+ if (File.Exists(savePath)) {
+ File.Delete(savePath);
+ }
+ File.Move("./tmp/book.mobi", savePath);
+ }
+ Directory.Delete("./tmp", true);
+ }
+ }
+}
diff --git a/KindleHelper-master/KindleHelper/resource/1.png b/KindleHelper-master/KindleHelper/resource/1.png
new file mode 100644
index 0000000..4e0794d
Binary files /dev/null and b/KindleHelper-master/KindleHelper/resource/1.png differ
diff --git a/KindleHelper-master/KindleHelper/resource/2.png b/KindleHelper-master/KindleHelper/resource/2.png
new file mode 100644
index 0000000..ad73f47
Binary files /dev/null and b/KindleHelper-master/KindleHelper/resource/2.png differ
diff --git a/KindleHelper-master/KindleHelper/resource/3.png b/KindleHelper-master/KindleHelper/resource/3.png
new file mode 100644
index 0000000..388359a
Binary files /dev/null and b/KindleHelper-master/KindleHelper/resource/3.png differ
diff --git a/KindleHelper-master/KindleHelper/resource/4.jpg b/KindleHelper-master/KindleHelper/resource/4.jpg
new file mode 100644
index 0000000..d5f92b2
Binary files /dev/null and b/KindleHelper-master/KindleHelper/resource/4.jpg differ
diff --git a/KindleHelper-master/KindleHelper/resource/5.jpg b/KindleHelper-master/KindleHelper/resource/5.jpg
new file mode 100644
index 0000000..d6de612
Binary files /dev/null and b/KindleHelper-master/KindleHelper/resource/5.jpg differ
diff --git a/KindleHelper-master/KindleHelper/resource/6.jpg b/KindleHelper-master/KindleHelper/resource/6.jpg
new file mode 100644
index 0000000..a9c7ea8
Binary files /dev/null and b/KindleHelper-master/KindleHelper/resource/6.jpg differ
diff --git a/KindleHelper-master/KindleHelper/workspace/tools/kindlegen.exe b/KindleHelper-master/KindleHelper/workspace/tools/kindlegen.exe
new file mode 100644
index 0000000..655c9b4
Binary files /dev/null and b/KindleHelper-master/KindleHelper/workspace/tools/kindlegen.exe differ
diff --git a/KindleHelper-master/KindleHelper/workspace/tpls/tpl_book_toc.html b/KindleHelper-master/KindleHelper/workspace/tpls/tpl_book_toc.html
new file mode 100644
index 0000000..9a92d09
--- /dev/null
+++ b/KindleHelper-master/KindleHelper/workspace/tpls/tpl_book_toc.html
@@ -0,0 +1,22 @@
+
+
+
+
+
+
+
+Table Of Contents
+
+
+
+
+
+目录
+
+
+
+
diff --git a/KindleHelper-master/KindleHelper/workspace/tpls/tpl_chapter.html b/KindleHelper-master/KindleHelper/workspace/tpls/tpl_chapter.html
new file mode 100644
index 0000000..9fc05c7
--- /dev/null
+++ b/KindleHelper-master/KindleHelper/workspace/tpls/tpl_chapter.html
@@ -0,0 +1,17 @@
+
+
+
+
+
+
+
+___CHAPTER_ID___
+
+
+
+
+
+___CHAPTER_NAME___
+___CONTENT___
+
+
diff --git a/KindleHelper-master/KindleHelper/workspace/tpls/tpl_content.opf b/KindleHelper-master/KindleHelper/workspace/tpls/tpl_content.opf
new file mode 100644
index 0000000..8e597b9
--- /dev/null
+++ b/KindleHelper-master/KindleHelper/workspace/tpls/tpl_content.opf
@@ -0,0 +1,30 @@
+
+
+
+
+
+___BOOK_ID___
+___BOOK_NAME___
+2016
+Created with EasyPub v1.50
+zh-CN
+
+
+
+
+
+
+
+___MANIFEST___
+
+
+
+
+___SPINE___
+
+
+
+
+
+
+
diff --git a/KindleHelper-master/KindleHelper/workspace/tpls/tpl_cover.html b/KindleHelper-master/KindleHelper/workspace/tpls/tpl_cover.html
new file mode 100644
index 0000000..462a20d
--- /dev/null
+++ b/KindleHelper-master/KindleHelper/workspace/tpls/tpl_cover.html
@@ -0,0 +1,18 @@
+
+
+
+
+
+
+
+Cover
+
+
+
+
+
+
___BOOK_NAME___
+___BOOK_AUTHOR___
+
+
+
diff --git a/KindleHelper-master/KindleHelper/workspace/tpls/tpl_style.css b/KindleHelper-master/KindleHelper/workspace/tpls/tpl_style.css
new file mode 100644
index 0000000..1fd369d
--- /dev/null
+++ b/KindleHelper-master/KindleHelper/workspace/tpls/tpl_style.css
@@ -0,0 +1,161 @@
+/* Generated by EasyPub */
+/* 此css由EasyPub自动生成 */
+/* 部分参考老牛中文样式 */
+
+
+
+body {
+ padding: 0;
+ orphans: 0;
+ widows: 0;
+}
+
+p {
+ margin-left: 0;
+ margin-right: 0;
+ orphans: 0;
+ widows: 0;
+}
+
+div.centeredimage {
+ text-align:center;
+ display:block;
+ margin-top: 0.5em;
+ margin-bottom: 0.5em;
+}
+
+img.attpic {
+ border: 1px solid #000000;
+ max-width: 100%;
+ margin: 0;
+}
+
+.booktitle {
+ margin-top: 30%;
+ margin-bottom: 0;
+ border-style: none solid none none;
+ border-width: 50px;
+ border-color: #4E594D;
+ font-size: 3em;
+ line-height: 120%;
+ text-align: right;
+}
+
+.bookauthor {
+ margin-top: 0;
+ border-style: none solid none none;
+ border-width: 50px;
+ border-color: #4E594D;
+ page-break-after: always;
+ font-size: large;
+ line-height: 120%;
+ text-align: right;
+}
+
+@media not amzn-mobi {
+.titletoc, .titlel1top, .titlel1std,.titlel2top, .titlel2std,.titlel3top, .titlel3std,.titlel4std {
+ margin-top: 0;
+ margin-bottom: 1.2em;
+ border-style: none none dotted none;
+ border-width: 0px 0px 1px 0px;
+ border-color: #C1CCC0;
+ padding: 10px 0 10px 0;
+ font-size: x-large;
+ line-height: 125%;
+ text-align: center;
+ text-shadow: 1px 1px 1px #333;
+}
+
+.titlel1single,.titlel2single,.titlel3single {
+ margin-top: 35%;
+ border-style: none solid none none;
+ border-width: 30px;
+ border-color: #4E594D;
+ padding: 30px 5px 5px 5px;
+ font-size: x-large;
+ line-height: 110%;
+ text-align: right;
+}
+}
+
+@media amzn-mobi {
+.titletoc, .titlel1top, .titlel1std,.titlel2top, .titlel2std,.titlel3top, .titlel3std,.titlel4std {
+ margin-top: 0;
+ padding-top: 20px;
+ font-size: x-large;
+ line-height: 125%;
+ text-align: center;
+}
+
+.titlel1single,.titlel2single,.titlel3single {
+ margin-top: 35%;
+ line-height: 110%;
+ font-size: x-large;
+ text-align: center;
+}
+}
+
+.toc {
+ margin-left:12%;
+ padding:0px;
+ line-height:130%;
+ text-align: justify;
+}
+
+.toc a { text-decoration: none; color: #000000; }
+
+.tocl1 {
+ margin-top:0.5em;
+ margin-left:-30px;
+ border-style: none double double solid;
+ border-width: 0px 5px 2px 20px;
+ border-color: #6B766A;
+ line-height: 135%;
+ font-size: 132%;
+}
+
+.tocl2 {
+ margin-top: 0.5em;
+ margin-left:-20px;
+ border-style: none none none none;
+ line-height: 123%;
+ font-size: 120%;
+}
+
+
+.tocl3 {
+ margin-top: 0.5em;
+ margin-left:-20px;
+ border-style: none double none solid;
+ border-width: 0px 2px 0px 8px;
+ border-color: #939E92;
+ line-height: 112%;
+ font-size: 109%;
+}
+
+.tocl4 {
+ margin-top: 0.5em;
+ margin-left:-20px;
+ border-style: none double none solid;
+ border-width: 0px 2px 0px 6px;
+ border-color: #939E92;
+ line-height: 115%;
+ font-size: 110%;
+}
+
+.subtoc {
+ margin-left:15%;
+ padding:0px;
+ text-align: justify;
+}
+
+.subtoclist {
+ margin-top: 0.5em;
+ margin-left:-20px;
+ border-style: none double none solid;
+ border-width: 0px 2px 0px 10px;
+ border-color: #939E92;
+ line-height: 123%;
+ font-size: 120%;
+}
+
diff --git a/KindleHelper-master/KindleHelper/workspace/tpls/tpl_toc.ncx b/KindleHelper-master/KindleHelper/workspace/tpls/tpl_toc.ncx
new file mode 100644
index 0000000..61733e1
--- /dev/null
+++ b/KindleHelper-master/KindleHelper/workspace/tpls/tpl_toc.ncx
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+完美世界
+
+
+
+
+
+
+
+封面
+
+
+
+
+目录
+
+
+
+___NAV___
+
+
+
diff --git a/KindleHelper-master/KindleHelperCommand/App.config b/KindleHelper-master/KindleHelperCommand/App.config
new file mode 100644
index 0000000..88fa402
--- /dev/null
+++ b/KindleHelper-master/KindleHelperCommand/App.config
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/KindleHelper-master/KindleHelperCommand/KindleHelperCommand.csproj b/KindleHelper-master/KindleHelperCommand/KindleHelperCommand.csproj
new file mode 100644
index 0000000..530f1a3
--- /dev/null
+++ b/KindleHelper-master/KindleHelperCommand/KindleHelperCommand.csproj
@@ -0,0 +1,66 @@
+
+
+
+
+ Debug
+ AnyCPU
+ {52A8A6B6-8106-49B7-AF3A-54FBF2F1595D}
+ Exe
+ Properties
+ KindleHelperCommand
+ KindleHelperCommand
+ v4.5.2
+ 512
+ true
+
+
+ AnyCPU
+ true
+ full
+ false
+ bin\Debug\
+ DEBUG;TRACE
+ prompt
+ 4
+
+
+ AnyCPU
+ pdbonly
+ true
+ bin\Release\
+ TRACE
+ prompt
+ 4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {326650cb-b2ef-4db4-990c-95c1e0c5e322}
+ libZhuishu
+
+
+
+
+
\ No newline at end of file
diff --git a/KindleHelper-master/KindleHelperCommand/Program.cs b/KindleHelper-master/KindleHelperCommand/Program.cs
new file mode 100644
index 0000000..33cbe00
--- /dev/null
+++ b/KindleHelper-master/KindleHelperCommand/Program.cs
@@ -0,0 +1,28 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Net;
+using System.Text;
+using System.Threading.Tasks;
+using System.IO;
+using libZhuishu;
+namespace KindleHelperCommand
+{
+ class Program
+ {
+ static void Main(string[] args)
+ {
+
+
+ //var books = LibZhuiShu.fuzzySearch("完美世界", 0, 1);
+ Console.WriteLine("xx:" +LibZhuiShu.autoComplate("完美"));
+ //foreach (var book in books) {
+ // Console.WriteLine(string.Format("{0} {1} {2}",book._id,book.title,book.author));
+ // var tocs = LibZhuiShu.getTocSummary(book._id);
+ // var chapertList = LibZhuiShu.getChaperList(tocs[0]._id);
+ // Console.WriteLine(LibZhuiShu.getChapter(chapertList.chapters[0].link).body);
+ //}
+ Console.ReadKey();
+ }
+ }
+}
diff --git a/KindleHelper-master/KindleHelperCommand/Properties/AssemblyInfo.cs b/KindleHelper-master/KindleHelperCommand/Properties/AssemblyInfo.cs
new file mode 100644
index 0000000..31e6b89
--- /dev/null
+++ b/KindleHelper-master/KindleHelperCommand/Properties/AssemblyInfo.cs
@@ -0,0 +1,36 @@
+using System.Reflection;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+// 有关程序集的一般信息由以下
+// 控制。更改这些特性值可修改
+// 与程序集关联的信息。
+[assembly: AssemblyTitle("KindleHelperCommand")]
+[assembly: AssemblyDescription("")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("")]
+[assembly: AssemblyProduct("KindleHelperCommand")]
+[assembly: AssemblyCopyright("Copyright © 2016")]
+[assembly: AssemblyTrademark("")]
+[assembly: AssemblyCulture("")]
+
+//将 ComVisible 设置为 false 将使此程序集中的类型
+//对 COM 组件不可见。 如果需要从 COM 访问此程序集中的类型,
+//请将此类型的 ComVisible 特性设置为 true。
+[assembly: ComVisible(false)]
+
+// 如果此项目向 COM 公开,则下列 GUID 用于类型库的 ID
+[assembly: Guid("52a8a6b6-8106-49b7-af3a-54fbf2f1595d")]
+
+// 程序集的版本信息由下列四个值组成:
+//
+// 主版本
+// 次版本
+// 生成号
+// 修订号
+//
+//可以指定所有这些值,也可以使用“生成号”和“修订号”的默认值,
+// 方法是按如下所示使用“*”: :
+// [assembly: AssemblyVersion("1.0.*")]
+[assembly: AssemblyVersion("1.0.0.0")]
+[assembly: AssemblyFileVersion("1.0.0.0")]
diff --git a/KindleHelper-master/README.md b/KindleHelper-master/README.md
new file mode 100644
index 0000000..15a43d5
--- /dev/null
+++ b/KindleHelper-master/README.md
@@ -0,0 +1,12 @@
+# KindleHelper
+## 全网小说搜索&下载.支持Mobi/txt格式.
+### 下载
+* github: https://github.com/qq573011406/KindleHelper/releases
+* 百度网盘: https://pan.baidu.com/s/1dEWLErZ 密码: 2wm8
+### 截图
+
+
+
+
+
+
diff --git a/KindleHelper-master/_config.yml b/KindleHelper-master/_config.yml
new file mode 100644
index 0000000..c419263
--- /dev/null
+++ b/KindleHelper-master/_config.yml
@@ -0,0 +1 @@
+theme: jekyll-theme-cayman
\ No newline at end of file
diff --git a/KindleHelper-master/gui-test/App.config b/KindleHelper-master/gui-test/App.config
new file mode 100644
index 0000000..88fa402
--- /dev/null
+++ b/KindleHelper-master/gui-test/App.config
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/KindleHelper-master/gui-test/Form1.Designer.cs b/KindleHelper-master/gui-test/Form1.Designer.cs
new file mode 100644
index 0000000..a06ba5f
--- /dev/null
+++ b/KindleHelper-master/gui-test/Form1.Designer.cs
@@ -0,0 +1,77 @@
+namespace gui_test
+{
+ partial class SearchForm
+ {
+ ///
+ /// 必需的设计器变量。
+ ///
+ private System.ComponentModel.IContainer components = null;
+
+ ///
+ /// 清理所有正在使用的资源。
+ ///
+ /// 如果应释放托管资源,为 true;否则为 false。
+ protected override void Dispose(bool disposing)
+ {
+ if (disposing && (components != null)) {
+ components.Dispose();
+ }
+ base.Dispose(disposing);
+ }
+
+ #region Windows 窗体设计器生成的代码
+
+ ///
+ /// 设计器支持所需的方法 - 不要修改
+ /// 使用代码编辑器修改此方法的内容。
+ ///
+ private void InitializeComponent()
+ {
+ this.comboBox1 = new System.Windows.Forms.ComboBox();
+ this.button1 = new System.Windows.Forms.Button();
+ this.SuspendLayout();
+ //
+ // comboBox1
+ //
+ this.comboBox1.Font = new System.Drawing.Font("宋体", 16F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+ this.comboBox1.FormattingEnabled = true;
+ this.comboBox1.Location = new System.Drawing.Point(122, 106);
+ this.comboBox1.Name = "comboBox1";
+ this.comboBox1.Size = new System.Drawing.Size(211, 29);
+ this.comboBox1.TabIndex = 0;
+ this.comboBox1.SelectedIndexChanged += new System.EventHandler(this.comboBox1_SelectedIndexChanged);
+ //
+ // button1
+ //
+ this.button1.Font = new System.Drawing.Font("宋体", 16F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+ this.button1.Location = new System.Drawing.Point(342, 106);
+ this.button1.Name = "button1";
+ this.button1.Size = new System.Drawing.Size(75, 29);
+ this.button1.TabIndex = 1;
+ this.button1.Text = "搜索";
+ this.button1.UseVisualStyleBackColor = true;
+ this.button1.Click += new System.EventHandler(this.button1_Click);
+ //
+ // SearchForm
+ //
+ this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
+ this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+ this.ClientSize = new System.Drawing.Size(592, 303);
+ this.Controls.Add(this.button1);
+ this.Controls.Add(this.comboBox1);
+ this.MaximizeBox = false;
+ this.MaximumSize = new System.Drawing.Size(608, 342);
+ this.MinimumSize = new System.Drawing.Size(608, 342);
+ this.Name = "SearchForm";
+ this.Text = "KindleHeler";
+ this.ResumeLayout(false);
+
+ }
+
+ #endregion
+
+ private System.Windows.Forms.ComboBox comboBox1;
+ private System.Windows.Forms.Button button1;
+ }
+}
+
diff --git a/KindleHelper-master/gui-test/Form1.cs b/KindleHelper-master/gui-test/Form1.cs
new file mode 100644
index 0000000..5e10d43
--- /dev/null
+++ b/KindleHelper-master/gui-test/Form1.cs
@@ -0,0 +1,30 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Windows.Forms;
+
+namespace gui_test
+{
+ public partial class SearchForm : Form
+ {
+ public SearchForm()
+ {
+ InitializeComponent();
+ }
+
+ private void button1_Click(object sender, EventArgs e)
+ {
+
+ }
+
+ private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
+ {
+
+ }
+ }
+}
diff --git a/KindleHelper-master/gui-test/Form1.resx b/KindleHelper-master/gui-test/Form1.resx
new file mode 100644
index 0000000..1af7de1
--- /dev/null
+++ b/KindleHelper-master/gui-test/Form1.resx
@@ -0,0 +1,120 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 2.0
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
\ No newline at end of file
diff --git a/KindleHelper-master/gui-test/Program.cs b/KindleHelper-master/gui-test/Program.cs
new file mode 100644
index 0000000..0d69849
--- /dev/null
+++ b/KindleHelper-master/gui-test/Program.cs
@@ -0,0 +1,22 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Threading.Tasks;
+using System.Windows.Forms;
+
+namespace gui_test
+{
+ static class Program
+ {
+ ///
+ /// 应用程序的主入口点。
+ ///
+ [STAThread]
+ static void Main()
+ {
+ Application.EnableVisualStyles();
+ Application.SetCompatibleTextRenderingDefault(false);
+ Application.Run(new SearchForm());
+ }
+ }
+}
diff --git a/KindleHelper-master/gui-test/Properties/AssemblyInfo.cs b/KindleHelper-master/gui-test/Properties/AssemblyInfo.cs
new file mode 100644
index 0000000..bd36edd
--- /dev/null
+++ b/KindleHelper-master/gui-test/Properties/AssemblyInfo.cs
@@ -0,0 +1,36 @@
+using System.Reflection;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+// 有关程序集的一般信息由以下
+// 控制。更改这些特性值可修改
+// 与程序集关联的信息。
+[assembly: AssemblyTitle("gui-test")]
+[assembly: AssemblyDescription("")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("")]
+[assembly: AssemblyProduct("gui-test")]
+[assembly: AssemblyCopyright("Copyright © 2016")]
+[assembly: AssemblyTrademark("")]
+[assembly: AssemblyCulture("")]
+
+//将 ComVisible 设置为 false 将使此程序集中的类型
+//对 COM 组件不可见。 如果需要从 COM 访问此程序集中的类型,
+//请将此类型的 ComVisible 特性设置为 true。
+[assembly: ComVisible(false)]
+
+// 如果此项目向 COM 公开,则下列 GUID 用于类型库的 ID
+[assembly: Guid("ec181f9c-47a2-44a8-b875-364c39406298")]
+
+// 程序集的版本信息由下列四个值组成:
+//
+// 主版本
+// 次版本
+// 生成号
+// 修订号
+//
+//可以指定所有这些值,也可以使用“生成号”和“修订号”的默认值,
+// 方法是按如下所示使用“*”: :
+// [assembly: AssemblyVersion("1.0.*")]
+[assembly: AssemblyVersion("1.0.0.0")]
+[assembly: AssemblyFileVersion("1.0.0.0")]
diff --git a/KindleHelper-master/gui-test/Properties/Resources.Designer.cs b/KindleHelper-master/gui-test/Properties/Resources.Designer.cs
new file mode 100644
index 0000000..5b98fe7
--- /dev/null
+++ b/KindleHelper-master/gui-test/Properties/Resources.Designer.cs
@@ -0,0 +1,70 @@
+//------------------------------------------------------------------------------
+//
+// 此代码由工具生成。
+// 运行时版本: 4.0.30319.42000
+//
+// 对此文件的更改可能导致不正确的行为,如果
+// 重新生成代码,则所做更改将丢失。
+//
+//------------------------------------------------------------------------------
+
+namespace gui_test.Properties
+{
+
+
+ ///
+ /// 强类型资源类,用于查找本地化字符串等。
+ ///
+ // 此类是由 StronglyTypedResourceBuilder
+ // 类通过类似于 ResGen 或 Visual Studio 的工具自动生成的。
+ // 若要添加或删除成员,请编辑 .ResX 文件,然后重新运行 ResGen
+ // (以 /str 作为命令选项),或重新生成 VS 项目。
+ [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")]
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+ [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
+ internal class Resources
+ {
+
+ private static global::System.Resources.ResourceManager resourceMan;
+
+ private static global::System.Globalization.CultureInfo resourceCulture;
+
+ [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
+ internal Resources()
+ {
+ }
+
+ ///
+ /// 返回此类使用的缓存 ResourceManager 实例。
+ ///
+ [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
+ internal static global::System.Resources.ResourceManager ResourceManager
+ {
+ get
+ {
+ if ((resourceMan == null)) {
+ global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("gui_test.Properties.Resources", typeof(Resources).Assembly);
+ resourceMan = temp;
+ }
+ return resourceMan;
+ }
+ }
+
+ ///
+ /// 覆盖当前线程的 CurrentUICulture 属性
+ /// 使用此强类型的资源类的资源查找。
+ ///
+ [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
+ internal static global::System.Globalization.CultureInfo Culture
+ {
+ get
+ {
+ return resourceCulture;
+ }
+ set
+ {
+ resourceCulture = value;
+ }
+ }
+ }
+}
diff --git a/KindleHelper-master/gui-test/Properties/Resources.resx b/KindleHelper-master/gui-test/Properties/Resources.resx
new file mode 100644
index 0000000..af7dbeb
--- /dev/null
+++ b/KindleHelper-master/gui-test/Properties/Resources.resx
@@ -0,0 +1,117 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 2.0
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
\ No newline at end of file
diff --git a/KindleHelper-master/gui-test/Properties/Settings.Designer.cs b/KindleHelper-master/gui-test/Properties/Settings.Designer.cs
new file mode 100644
index 0000000..cbb9046
--- /dev/null
+++ b/KindleHelper-master/gui-test/Properties/Settings.Designer.cs
@@ -0,0 +1,30 @@
+//------------------------------------------------------------------------------
+//
+// This code was generated by a tool.
+// Runtime Version:4.0.30319.42000
+//
+// Changes to this file may cause incorrect behavior and will be lost if
+// the code is regenerated.
+//
+//------------------------------------------------------------------------------
+
+namespace gui_test.Properties
+{
+
+
+ [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
+ [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "11.0.0.0")]
+ internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase
+ {
+
+ private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
+
+ public static Settings Default
+ {
+ get
+ {
+ return defaultInstance;
+ }
+ }
+ }
+}
diff --git a/KindleHelper-master/gui-test/Properties/Settings.settings b/KindleHelper-master/gui-test/Properties/Settings.settings
new file mode 100644
index 0000000..3964565
--- /dev/null
+++ b/KindleHelper-master/gui-test/Properties/Settings.settings
@@ -0,0 +1,7 @@
+
+
+
+
+
+
+
diff --git a/KindleHelper-master/gui-test/gui-test.csproj b/KindleHelper-master/gui-test/gui-test.csproj
new file mode 100644
index 0000000..aae78b2
--- /dev/null
+++ b/KindleHelper-master/gui-test/gui-test.csproj
@@ -0,0 +1,90 @@
+
+
+
+
+ Debug
+ AnyCPU
+ {EC181F9C-47A2-44A8-B875-364C39406298}
+ WinExe
+ Properties
+ gui_test
+ gui-test
+ v4.5.2
+ 512
+ true
+
+
+ AnyCPU
+ true
+ full
+ false
+ bin\Debug\
+ DEBUG;TRACE
+ prompt
+ 4
+
+
+ AnyCPU
+ pdbonly
+ true
+ bin\Release\
+ TRACE
+ prompt
+ 4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Form
+
+
+ Form1.cs
+
+
+
+
+ Form1.cs
+
+
+ ResXFileCodeGenerator
+ Resources.Designer.cs
+ Designer
+
+
+ True
+ Resources.resx
+
+
+ SettingsSingleFileGenerator
+ Settings.Designer.cs
+
+
+ True
+ Settings.settings
+ True
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/KindleHelper-master/libZhuishu/LibZhuiShu.cs b/KindleHelper-master/libZhuishu/LibZhuiShu.cs
new file mode 100644
index 0000000..766668b
--- /dev/null
+++ b/KindleHelper-master/libZhuishu/LibZhuiShu.cs
@@ -0,0 +1,134 @@
+using Newtonsoft.Json.Linq;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace libZhuishu
+{
+ public class LibZhuiShu
+ {
+ ///
+ /// 搜索小说
+ ///
+ /// 关键词
+ /// 结果开始Index
+ /// 结果数量限制
+ ///
+
+ public static QueryBookInfo[] fuzzySearch(string query, int start, int limit)
+ {
+ List bookList = new List();
+ string host = "http://api.zhuishushenqi.com/book/fuzzy-search";
+ var param_query = new KeyValuePair("query", query);
+ var param_start = new KeyValuePair("start", start.ToString());
+ var param_limit = new KeyValuePair("limit", limit.ToString());
+ var ret = HttpHelper.GET_JsonObject(host, param_query, param_start, param_limit);
+ var ok = ret["ok"].ToObject();
+ if (ok) {
+ var books = ret["books"];
+ foreach (var book in books) {
+ QueryBookInfo bookInfo = book.ToObject();
+ bookList.Add(bookInfo);
+ }
+ }
+ return bookList.ToArray();
+ }
+
+ ///
+ /// 获得混合书源
+ ///
+ ///
+ ///
+ public static MixTocInfo getMixToc(string bookid)
+ {
+ string host = string.Format("http://api.zhuishushenqi.com/mix-toc/{0}",bookid);
+ var ret = HttpHelper.GET_JsonObject(host);
+ var ok = ret["ok"].ToObject();
+ if (ok) {
+ var info = ret["mixToc"].ToObject();
+ return info;
+ }
+ return null;
+ }
+
+ ///
+ /// 获得书源
+ ///
+ ///
+ ///
+ public static TocSummmaryInfo[] getTocSummary(string bookid)
+ {
+ string host = string.Format("http://api.zhuishushenqi.com/toc?view=summary&book=" + bookid);
+ var ret = HttpHelper.GET_JsonArray(host);
+ List infoList = new List();
+ foreach (var summray in ret) {
+ TocSummmaryInfo info = summray.ToObject();
+ if (info.name != "优质书源") {
+ infoList.Add(info);
+ }
+ }
+ return infoList.ToArray();
+ }
+
+ ///
+ /// 获得章节列表
+ ///
+ /// 书源ID
+ ///
+
+ public static TocChaperListInfo getChaperList(string tocid)
+ {
+ string host = string.Format("http://api.zhuishushenqi.com/toc/{0}?view=chapters",tocid);
+ var ret = HttpHelper.GET_JsonObject(host);
+ return ret.ToObject();
+ }
+ ///
+ /// 获得章节内容
+ ///
+ /// 章节列表中的Link
+ ///
+ public static ChapterInfo getChapter(string chaperLink)
+ {
+ int timestamp = ConvertDateTimeInt(DateTime.Now);
+ chaperLink = System.Web.HttpUtility.UrlEncode(chaperLink, Encoding.UTF8);
+ string host = string.Format("http://chapter2.zhuishushenqi.com/chapter/{0}?k=2124b73d7e2e1945&t={1}", chaperLink,timestamp);
+ var ret = HttpHelper.GET_JsonObject(host);
+ var ok = ret["ok"].ToObject();
+ if (ok) {
+ var info = ret["chapter"].ToObject();
+ return info;
+ }
+ return null;
+ }
+
+ public static string[] autoComplate(string query)
+ {
+ string[] words = new string[0];
+ string host = string.Format("http://api.zhuishushenqi.com/book/auto-complete?query={0}", query);
+ var ret = HttpHelper.GET_JsonObject(host);
+
+ var ok = ret["ok"].ToObject();
+ if (ok) {
+ var keywords = ret["keywords"];
+ words = keywords.ToObject();
+ }
+ return words;
+ }
+
+
+
+
+ ///
+ /// DateTime时间格式转换为Unix时间戳格式
+ ///
+ /// DateTime时间格式
+ /// Unix时间戳格式
+ private static int ConvertDateTimeInt(System.DateTime time)
+ {
+ System.DateTime startTime = TimeZone.CurrentTimeZone.ToLocalTime(new System.DateTime(1970, 1, 1));
+ return (int)(time - startTime).TotalSeconds;
+ }
+ }
+}
diff --git a/KindleHelper-master/libZhuishu/Properties/AssemblyInfo.cs b/KindleHelper-master/libZhuishu/Properties/AssemblyInfo.cs
new file mode 100644
index 0000000..1a0b4be
--- /dev/null
+++ b/KindleHelper-master/libZhuishu/Properties/AssemblyInfo.cs
@@ -0,0 +1,36 @@
+using System.Reflection;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+// 有关程序集的一般信息由以下
+// 控制。更改这些特性值可修改
+// 与程序集关联的信息。
+[assembly: AssemblyTitle("libZhuishu")]
+[assembly: AssemblyDescription("")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("")]
+[assembly: AssemblyProduct("libZhuishu")]
+[assembly: AssemblyCopyright("Copyright © 2016")]
+[assembly: AssemblyTrademark("")]
+[assembly: AssemblyCulture("")]
+
+//将 ComVisible 设置为 false 将使此程序集中的类型
+//对 COM 组件不可见。 如果需要从 COM 访问此程序集中的类型,
+//请将此类型的 ComVisible 特性设置为 true。
+[assembly: ComVisible(false)]
+
+// 如果此项目向 COM 公开,则下列 GUID 用于类型库的 ID
+[assembly: Guid("326650cb-b2ef-4db4-990c-95c1e0c5e322")]
+
+// 程序集的版本信息由下列四个值组成:
+//
+// 主版本
+// 次版本
+// 生成号
+// 修订号
+//
+//可以指定所有这些值,也可以使用“生成号”和“修订号”的默认值,
+// 方法是按如下所示使用“*”: :
+// [assembly: AssemblyVersion("1.0.*")]
+[assembly: AssemblyVersion("1.0.0.0")]
+[assembly: AssemblyFileVersion("1.0.0.0")]
diff --git a/KindleHelper-master/libZhuishu/api/ChapterInfo.cs b/KindleHelper-master/libZhuishu/api/ChapterInfo.cs
new file mode 100644
index 0000000..72d2ea1
--- /dev/null
+++ b/KindleHelper-master/libZhuishu/api/ChapterInfo.cs
@@ -0,0 +1,18 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace libZhuishu
+{
+ public class ChapterInfo
+ {
+ public string title;
+ public string body;
+ public bool isVip;
+ public string cpContent;
+ public int currency;
+ public string id;
+ }
+}
diff --git a/KindleHelper-master/libZhuishu/api/HttpHelper.cs b/KindleHelper-master/libZhuishu/api/HttpHelper.cs
new file mode 100644
index 0000000..ea4fa55
--- /dev/null
+++ b/KindleHelper-master/libZhuishu/api/HttpHelper.cs
@@ -0,0 +1,61 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Net;
+using System.IO;
+using Newtonsoft.Json;
+using Newtonsoft.Json.Linq;
+using Newtonsoft.Json.Converters;
+using System.Drawing;
+namespace libZhuishu
+{
+ public class HttpHelper
+ {
+ public static string GET(string url, params KeyValuePair[] args)
+ {
+ string param = "";
+ if (args.Length > 0) {
+ param = "?";
+ foreach (var arg in args) {
+ param += arg.Key + "=" + arg.Value + "&";
+ }
+ }
+
+ var request = WebRequest.CreateHttp(url + param);
+ request.Method = "GET";
+ request.ProtocolVersion = new Version(1, 1);
+ request.UserAgent = "YouShaQi/2.25.2 (iPhone; iOS 9.3.2; Scale/2.00)";
+ //request.Headers.Add("X-Device-Id", "631cf212b409f949264fad9ba1ba1daa");
+ var response = request.GetResponse();
+ var repStream = response.GetResponseStream();
+ var reader = new StreamReader(repStream);
+ var result = reader.ReadToEnd();
+ reader.Close();
+ return result;
+ }
+
+
+
+ public static void AsyncGET(Action callback, string url, params KeyValuePair[] args)
+ {
+
+ }
+
+ public static JObject GET_JsonObject(string url, params KeyValuePair[] args)
+ {
+ string result = GET(url, args);
+ JObject obj = JObject.Parse(result);
+ return obj;
+ }
+ public static JArray GET_JsonArray(string url, params KeyValuePair[] args)
+ {
+ string result = GET(url, args);
+ JArray array = JArray.Parse(result);
+ return array;
+ }
+
+
+ }
+}
diff --git a/KindleHelper-master/libZhuishu/api/MixTocInfo.cs b/KindleHelper-master/libZhuishu/api/MixTocInfo.cs
new file mode 100644
index 0000000..4d66f8a
--- /dev/null
+++ b/KindleHelper-master/libZhuishu/api/MixTocInfo.cs
@@ -0,0 +1,19 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace libZhuishu
+{
+
+
+ public class MixTocInfo
+ {
+ public string _id;
+ public string book;
+ public string chaptersUpdated;
+ public string updated;
+ public tocChaperInfo[] chapters;
+ }
+}
diff --git a/KindleHelper-master/libZhuishu/api/QueryBookInfo.cs b/KindleHelper-master/libZhuishu/api/QueryBookInfo.cs
new file mode 100644
index 0000000..17efbdc
--- /dev/null
+++ b/KindleHelper-master/libZhuishu/api/QueryBookInfo.cs
@@ -0,0 +1,24 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace libZhuishu
+{
+ public class QueryBookInfo
+ {
+ public string _id;
+ public bool hasCp;
+ public string title;
+ public string cat;
+ public string author;
+ public string site;
+ public string cover;
+ public string shortIntro;
+ public string lastChapter;
+ public string retentionRatio;
+ public int latelyFollower;
+ public long wordCount;
+ }
+}
diff --git a/KindleHelper-master/libZhuishu/api/TocChaperListInfo.cs b/KindleHelper-master/libZhuishu/api/TocChaperListInfo.cs
new file mode 100644
index 0000000..6494b3e
--- /dev/null
+++ b/KindleHelper-master/libZhuishu/api/TocChaperListInfo.cs
@@ -0,0 +1,17 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace libZhuishu
+{
+ public class TocChaperListInfo
+ {
+ public string _id;
+ public string name;
+ public string link;
+ public tocChaperInfo[] chapters;
+ public string updated;
+ }
+}
diff --git a/KindleHelper-master/libZhuishu/api/TocSummmaryInfo.cs b/KindleHelper-master/libZhuishu/api/TocSummmaryInfo.cs
new file mode 100644
index 0000000..f4c9827
--- /dev/null
+++ b/KindleHelper-master/libZhuishu/api/TocSummmaryInfo.cs
@@ -0,0 +1,22 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace libZhuishu
+{
+ public class TocSummmaryInfo
+ {
+ public string _id;
+ public string lastChapter;
+ public string link;
+ public string aeasou;
+ public string name;
+ public bool isCharge;
+ public int chaptersCount;
+ public string updated;
+ public bool starting;
+ public string host;
+ }
+}
diff --git a/KindleHelper-master/libZhuishu/api/doc/apidoc.txt b/KindleHelper-master/libZhuishu/api/doc/apidoc.txt
new file mode 100644
index 0000000..6d291b4
--- /dev/null
+++ b/KindleHelper-master/libZhuishu/api/doc/apidoc.txt
@@ -0,0 +1,246 @@
+追书神器API:
+
+1.搜索图书
+Host:api.zhuishushenqi.com
+Method:GET /book/fuzzy-search
+Params:
+ query:关键词
+ start:结果开始位置
+ limit:结果最大数量
+response:
+{
+ "books": [
+ {
+ "_id": "508751bef98e8f7446000024",
+ "hasCp": true,
+ "title": "神墓",
+ "cat": "玄幻",
+ "author": "辰东",
+ "site": "qidian",
+ "cover": "/agent/http://image.cmfu.com/books/63856/63856.jpg",
+ "shortIntro": "一个死去万载岁月的平凡青年从远古神墓中复活而出……",
+ "lastChapter": "我的新书《完美世界》已上传,请兄弟姐妹来观看",
+ "retentionRatio": 51.46,
+ "latelyFollower": 601,
+ "wordCount": 3124360
+ },
+ {
+ "_id": "561231284d4192d70a503e27",
+ "hasCp": false,
+ "title": "他从神墓来",
+ "cat": "同人",
+ "author": "邱则",
+ "site": "qidian",
+ "cover": "/agent/http://image.cmfu.com/books/2889151/2889151.jpg",
+ "shortIntro": "先穿越到神墓历经十世轮回千万载岁月,后与天道一战打破多元宇宙壁垒。穿梭到其他世界······",
+ "lastChapter": "第二十六章",
+ "retentionRatio": null,
+ "latelyFollower": 12,
+ "wordCount": 99397
+ }
+ ],
+ "ok": true
+}
+--------------------------------------------------
+2.书籍详情
+Host:api.zhuishushenqi.com
+Method:GET /book/书籍ID
+response:
+{
+ "_id": "50bee5172033d09b2f00001b",
+ "author": "莫默",
+ "banned": 0,
+ "cover": "/agent/http://image.cmfu.com/books/2494758/2494758.jpg",
+ "creater": "iPhone 4S",
+ "dramaPoint": null,
+ "followerCount": 14385,
+ "gradeCount": 0,
+ "isSerial": true,
+ "lastChapter": "请安装【追书神器】,本应用已停用",
+ "latelyFollower": 165101,
+ "longIntro": "您当前所使用的软件已改名为【追书神器】。\n请搜索“追书神器”下载安装最新版【追书神器】。\n无广告;不闪退;章节更新自动通知。",
+ "postCount": 28547,
+ "reviewCount": 618,
+ "serializeWordCount": 5706,
+ "tags": [
+ "玄幻",
+ "热血",
+ "架空",
+ "巅峰",
+ "奇遇",
+ "升级练功",
+ "东方玄幻"
+ ],
+ "title": "武炼巅峰",
+ "tocs": [
+ "50bee5172033d09b2f00001c",
+ "50c703274a0d32e637000064",
+ "51776b30fb92a36054000146",
+ "523070e69e75522764000129",
+ "52bd2b9029eb81b82500008f",
+ "52bd2b9029eb81b825000090",
+ "52bd2b9029eb81b825000091",
+ "532bf5f63949325379000021"
+ ],
+ "totalPoint": null,
+ "type": "xhqh",
+ "updated": "2016-07-11T00:49:34.749Z",
+ "writingPoint": null,
+ "site": "qidian",
+ "hasNotice": false,
+ "tagStuck": 0,
+ "chaptersCount": 3079,
+ "tocCount": 10,
+ "tocUpdated": "2016-07-11T00:49:34.749Z",
+ "retentionRatio": 73.69,
+ "followerRank": 70,
+ "retentionRatioRank": 82,
+ "hasCmread": true,
+ "thirdFlagsUpdated": "2014-09-01T05:56:51.009Z",
+ "categories": [
+ "东方玄幻",
+ "玄幻"
+ ],
+ "wordCount": 9294707,
+ "aliases": [
+ "武练巅峰"
+ ],
+ "cat": "玄幻",
+ "gender": [
+ "male"
+ ],
+ "majorCate": "玄幻",
+ "minorCate": "东方玄幻",
+ "monthFollower": {
+ "11": 6342
+ },
+ "totalFollower": 12734,
+ "monthRetentionRatio": {
+ "11": 66.67
+ },
+ "cpOnly": false,
+ "hasCp": true
+}
+------------------------
+3.书源
+GET /toc?view=summary&book=573d65ab608bed412452ba69 HTTP/1.1
+reponse:
+[
+ {
+ "_id": "5679b5debb597f3a47b208f5",
+ "lastChapter": "请假,暂停一天",
+ "link": "http://api.easou.com/api/bookapp/chapter_list.m?gid=10645516&nid=1010645516&size=10000&cid=eef_easou_book&version=002&os=android&appverion=1011",
+ "source": "aeasou",
+ "name": "宜搜小说",
+ "isCharge": false,
+ "chaptersCount": 2063,
+ "updated": "2016-07-11T18:14:05.380Z",
+ "starting": false,
+ "host": "api.easou.com"
+ },
+ {
+ "_id": "532d0126394932537900222b",
+ "lastChapter": "请假,暂停一天",
+ "link": "http://read.shuhaha.com/Html/Book/34/34019/",
+ "name": "书哈哈小说网",
+ "source": "shuhaha",
+ "isCharge": false,
+ "chaptersCount": 2115,
+ "updated": "2016-07-11T16:07:35.732Z",
+ "starting": false,
+ "host": "read.shuhaha.com"
+ }
+]
+-------------------------
+4.章节列表
+Host:api.zhuishushenqi.com
+Method:GET /toc/书源ID?view=chapters
+response:
+{"_id":"57398b120d9625ff2f6c2f34","name":"优质书源","link":"http://www.ybdu.com/xiaoshuo/402/402169/index.html","chapters":[{"title":"第1章 战神重生","link":"http://www.ybdu.com/xiaoshuo/402/402169/792.html","id":"57398b127fb8b8705ac36825","currency":10,"unreadble":false,"isVip":false},{"title":"第2章 滚下去","link":"http://www.ybdu.com/xiaoshuo/402/402169/545.html","id":"57398b127fb8b8705ac36826","currency":10,"unreadble":false,"isVip":false},{"title":"第3章 强硬逼婚","link":"http://www.ybdu.com/xiaoshuo/402/402169/376.html","id":"57398b127fb8b8705ac36827","currency":10,"unreadble":false,"isVip":false},{"title":"第4章 聂天的狂","link":"http://www.ybdu.com/xiaoshuo/402/402169/119.html","id":"57398b127fb8b8705ac36828","currency":10,"unreadble":false,"isVip":false},{"title":"第5章 凝聚人心","link":"http://www.ybdu.com/xiaoshuo/402/402169/394.html","id":"57398b127fb8b8705ac36829","currency":10,"unreadble":false,"isVip":false},{"title":"第6章 星辰原石","link":"http://www.ybdu.com/xiaoshuo/402/402169/95.html","id":"57398b127fb8b8705ac3682a","currency":10,"unreadble":false,"isVip":false},{"title":"第7章 星辰之力觉醒","link":"http://www.ybdu.com/xiaoshuo/402/402169/475.html","id":"57398b127fb8b8705ac3682b","currency":10,"unreadble":false,"isVip":false},{"title":"第8章 你叫我废物","link":"http://www.ybdu.com/xiaoshuo/402/402169/51.html","id":"57398b127fb8b8705ac3682c","currency":10,"unreadble":false,"isVip":false},{"title":"第9章 剑绝天斩","link":"http://www.ybdu.com/xiaoshuo/402/402169/680.html","id":"57398b127fb8b8705ac3682d","currency":10,"unreadble":false,"isVip":false},{"title":"第10章 墨如曦","link":"http://www.ybdu.com/xiaoshuo/402/402169/596.html","id":"57398b127fb8b8705ac3682e","currency":10,"unreadble":false,"isVip":false}],"updated":"2016-07-11T02:30:53.450Z"}
+-------------------------
+
+5.混合源章节列表
+GET http://api.zhuishushenqi.com/mix-toc/书籍ID
+{
+ "ok": true,
+ "mixToc": {
+ "_id": "53a2c43ffda0a68d82ff3d19",
+ "book": "50864deb9dacd30e3a00001d",
+ "chaptersUpdated": "2016-07-05T12:09:09.720Z",
+ "updated": "2016-07-08T12:51:21.385Z",
+ "chapters": [
+ {
+ "title": "第一章 林动【新书开张,郑重的求收藏!】",
+ "link": "http://www.ybdu.com/xiaoshuo/402/402169/129.html",
+ "unreadble": false
+ },
+ {
+ "title": "第二章 通背拳",
+ "link": "http://www.ybdu.com/xiaoshuo/402/402169/140.html",
+ "unreadble": false
+ },
+ {
+ "title": "第三章 古怪的石池",
+ "link": "http://www.ybdu.com/xiaoshuo/402/402169/146.html",
+ "unreadble": false
+ },
+ {
+ "title": "第四章 石池之秘",
+ "link": "http://www.ybdu.com/xiaoshuo/402/402169/198.html",
+ "unreadble": false
+ },
+ {
+ "title": "第五章 神秘石符",
+ "link": "http://www.ybdu.com/xiaoshuo/402/402169/517.html",
+ "unreadble": false
+ },
+ {
+ "title": "第六章 七响",
+ "link": "http://www.ybdu.com/xiaoshuo/402/402169/633.html",
+ "unreadble": false
+ },
+ {
+ "title": "第七章 淬体第四重",
+ "link": "http://www.ybdu.com/xiaoshuo/402/402169/139.html",
+ "unreadble": false
+ },
+ {
+ "title": "第八章 冲突",
+ "link": "http://www.ybdu.com/xiaoshuo/402/402169/993.html",
+ "unreadble": false
+ },
+ {
+ "title": "第九章 林宏",
+ "link": "http://www.ybdu.com/xiaoshuo/402/402169/410.html",
+ "unreadble": false
+ },
+ {
+ "title": "第十章 金玉枝",
+ "link": "http://www.ybdu.com/xiaoshuo/402/402169/126.html",
+ "unreadble": false
+ }
+ ]
+ }
+}
+
+
+4.章节内容
+Host:chapter2.zhuishushenqi.com
+Method:GET /chapter/章节link(从章节列表中获得)?k=2124b73d7e2e1945&t=1468223717
+response:
+{
+ "ok": true,
+ "chapter": {
+ "title": "第1章 他叫白小纯",
+ "body": "\n\r\n\r\n\r请安装最新版追书 以便使用优质资源",
+ "isVip": false,
+ "cpContent": " 帽按时大大说",
+ "currency": 15,
+ "id": "5750118aa37701c41f60646f"
+ }
+}
+
+
+6.Autocomplate
+GET /book/auto-complete?query=%E6%AD%A6%E5%8A%A8 HTTP/1.1
+{"keywords":["武动乾坤","武动乾坤续集之大千世界","武动乾坤番外之冰灵族","武动乾坤续集","武动时空","武动韩娱","武动乾坤冰灵族","武动乾坤后续","武动龙珠","武动苍冥"],"ok":true}
\ No newline at end of file
diff --git a/KindleHelper-master/libZhuishu/api/tocChaperInfo.cs b/KindleHelper-master/libZhuishu/api/tocChaperInfo.cs
new file mode 100644
index 0000000..743c197
--- /dev/null
+++ b/KindleHelper-master/libZhuishu/api/tocChaperInfo.cs
@@ -0,0 +1,18 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace libZhuishu
+{
+ public class tocChaperInfo
+ {
+ public string title;
+ public string link;
+ public bool unreadble;
+ public string id;
+ public int currency;
+ public bool isVip;
+ }
+}
diff --git a/KindleHelper-master/libZhuishu/libZhuishu.csproj b/KindleHelper-master/libZhuishu/libZhuishu.csproj
new file mode 100644
index 0000000..8fc614c
--- /dev/null
+++ b/KindleHelper-master/libZhuishu/libZhuishu.csproj
@@ -0,0 +1,72 @@
+
+
+
+
+ Debug
+ AnyCPU
+ {326650CB-B2EF-4DB4-990C-95C1E0C5E322}
+ Library
+ Properties
+ libZhuishu
+ libZhuishu
+ v4.5.2
+ 512
+
+
+ true
+ full
+ false
+ bin\Debug\
+ DEBUG;TRACE
+ prompt
+ 4
+
+
+ pdbonly
+ true
+ bin\Release\
+ TRACE
+ prompt
+ 4
+
+
+
+ ..\packages\Newtonsoft.Json.9.0.1\lib\net45\Newtonsoft.Json.dll
+ True
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/KindleHelper-master/libZhuishu/packages.config b/KindleHelper-master/libZhuishu/packages.config
new file mode 100644
index 0000000..9d64bf3
--- /dev/null
+++ b/KindleHelper-master/libZhuishu/packages.config
@@ -0,0 +1,4 @@
+
+
+
+
\ No newline at end of file