UNIAPP 小说采集阅读器
UNIAPP H5端 APP端小说阅读器
缘起
学习uniapp有一年多,前期做过一个同城项目,后面工作忙,没有继续深入学习。2020年由于疫情的缘故,在家搁置时间过长,期间父亲大人迷上了小说,我就去网上找各种破解版小说APP给他。刚开始还好,看着看着软件强制更新了,就又给他找其他的破解APP,看一段时间又更新了。。。周而复始,后来就想为什么不自己弄一个呢,于是就有了今天这个项目。
主要功能
我主张一切从简,小说阅读器的主要功能:能看,能搜。无论是三岁小孩,还是八十老妪,打开就能懂如何使用。
界面设计
业余前端,不追求页面的极致,能看就行。
- 主页
- 分类页
- 书籍详情页
- 书籍阅读页
- 书架页
- 我的页
我的页没有实质性功能,没有登录操作。
制作期间去uniapp的插件市场观摩了其他大佬做的小说阅读器,本来是不想重复造轮子的,使用过程中发现了一些BUG,我无法解决,后来不得不自己造轮子了。
程序开发
鉴于自己都是前端小白,努力做到页面结构划分清晰,让人看着不乱,能自己扩展。所以组件我选用了官方组件,css纯手写。
页面内部js也有注释说明,能详尽详。
API接口说明
页面都是异步请求加载数据的,下面列出所有界面需要的接口。
首页
- 获取分类小说总数接口
getcategorycount
返回示例
{"msg":"操作成功","code":200,"cclist":[{"count":42,"category":"其他小说"},{"count":345,"category":"历史军事"},{"count":160,"category":"女生频道"},{"count":53,"category":"武侠仙侠"},{"count":391,"category":"游戏竞技"},{"count":14,"category":"玄幻奇幻"},{"count":210,"category":"科幻灵异"},{"count":102,"category":"都市言情"}]}
- 搜索接口
searchBook
返回示例
{"msg":"操作成功","booklist":[{"create_time":"2020-05-10 10:40:55","fiction_url":"ww.abc.com","author":"糖衣古典","description":"……","id":1252,"title":"盗墓者传奇:月夜鬼吹灯","f_type":"科幻灵异","book_img":"24340.jpg","f_status":"连载中"}],"code":200}
小说分类页接口
- 获取某分类下有多少本小说
getbooklist
返回示例
{"msg":"操作成功","code":200,"totalpages":1,"bookList":[{"id":1360,"title":"诡秘之主","author":"爱潜水的乌贼","description":"明依旧照耀,神秘从未远离,这是一段“愚者”的传说。","updateTime":null,"createTime":"2020-05-11 11:00:18","wordNumber":null,"bookImg":"1949.gif","fictionUrl":"https://www.abcw.com/index.html","fstatus":"连载中","ftype":"玄幻奇幻"}]}
书籍详情页接口
- 获取书籍详情
getbookinfo?fictionid=1351
{"msg":"操作成功","code":200,"bookData":{"id":1351,"title":"三国美人志","author":"最后的茄子","description":"书籍描述","updateTime":null,"createTime":"2020-05-10 17:05:15","wordNumber":null,"bookImg":"woshitupian","fictionUrl":"www.xsddss.com","fstatus":"已完结","ftype":"游戏竞技"}}
- 获取章节目录
getchapterlist
{"msg":"操作成功","code":200,"chapterlist":[{"id":null,"fictionId":null,"chapterTitle":"第一章 穿越成陶松","content":null,"createDate":null,"chapterUrl":"www.xxx.com","corder":1}]
读书详情页接口
getcontent
{"msg":"操作成功","code":200,"content":"我是内容"}
以上是运行项目所需要的API接口,各位读者可根据自己的语言的特性,开发相关的API接口。
结语
经过半个月的努力,一套属于我自己的小说阅读器诞生了,uniapp可以打包成H5和APP。我自己买了个服务器,部署了H5端,运行了一段时间,自我感觉还好。1M的带宽,有点慢,大家体验一下。
疑问:小说从哪里来?
百度 免费小说 会出来一堆网站,自己选一个反应快的界面不乱的广告少的网站进行抓取。
怎么抓取?
- 打包成APP的,可以参考uniapp插件里头的仔仔小说阅读器,直接前端抓取。
- 打包成H5形式的,有跨域问题,不能在前端抓取,需要有自己的后台进行抓。如果你会JAVA就用Java抓,会phython就用phython抓。 抓取技术Java我用的jsoup,会jquery就能分析出来界面结构。
采集之后的小说可以保存到自己的数据库中,这样页面基本是秒加载的。当然你可以不保存到库,页面打开的时候后台动态抓取,动态返回文章内容章节内容等。这样是做的一点好处就是:后台不用跑自动任务去更新小说章节;缺点:就是有点慢。目前我采用的是动态采集,孰优孰劣,自己取舍。
源码地址
开源中国: https://gitee.com/aper/iread/
UNIAPP 小说采集阅读器相关推荐
- 小说下载阅读器_初始简单版
小说下载阅读器_初始简单版 相信园子里面的很多人和我一样喜欢阅读小说,下面是这几年用的比较多一点的阅读器,功能相对完整. Windows本地程序/手机 1.http://www.mybook66.co ...
- Delphi 10.4.2 轻松实现Android/IOS txt小说电子书阅读器应用APP翻页效果
Delphi 10.4.2是最新版本的跨平台本机应用开发工具,一套代码可编译到五个操作系统上:iOS.Android.Windows.macOS 和 Linux: 本代码仅仅数十行即可轻松实现Andr ...
- python +pyqt 小说下载阅读器 转语音合成 ,基于PyQt5生成图形页面(已打成exe可直接下载使用)
最近在学习python,写了一款简单的小说下载器,基本功能都已经实现,废话不多说 直接上效果 简单说下功能把 1.支持在线阅读,翻页 键盘快捷键上下(阅读) 左右(翻页).可以导出TXT到本地,默认是 ...
- 小说下载阅读器 官网
Welcome to my blog! <script language="javascript" src="http://avss.b15.cnwg.cn/cou ...
- 基于PyQt5和requests的小说在线阅读器(小说爬虫)
效果: 绝对布局 无章节预加载 在不关闭的情况下再次搜索存在bug 代码: python部分: import sys from PyQt5.QtGui import QIcon from PyQt5. ...
- CSDN11期 软件创新 :小说下载阅读器 点评
首先,"点评"只是个人看法,只是技术上的讨论,不带有褒贬色彩. 原项目在这里 http://chuang.csdn.net/mybook66 这是一个 小说下载阅读器 1.支持各小 ...
- UWP_小说在线阅读器:功能要求与技术要求
注:2017年2月23日正式提上日程 学了WP开发也有一年了,也没做过什么软件的.17年进发UWP,锻炼自己一下.做一个开源的小说阅读器吧. 既然开发一个软件.所以要设计一下吧. 功能要求: 可能要用 ...
- 用安卓手机看小说,阅读器APP怎么选
安卓手机上看小说,有很多种阅读APP供大家选择.作为小说爱好者,经过多款测评,选出以下小说阅读器,体验相对较好,推荐给喜欢在手机上看小说的朋友们. 第一款:Neat Reader 这款阅读器界面设计比 ...
- 用Windows电脑看txt小说,阅读器软件怎么选
Windows电脑上有哪些好用的TXT阅读器?综合来看,以下小说阅读器,体验相对较好.这些阅读器都支持TXT EPUB等常见小说格式. Top1:Neat Reader Neat Reader这款阅读 ...
- 用安卓手机看txt小说,阅读器APP怎么选
txt是最常见的一种文档格式,大家经常会下载一些txt小说或资料在手机上阅读.经过多款测评,选出以下小说阅读器,体验相对较好,推荐给喜欢在手机上看小说的朋友们. 1) Neat Reader 这款阅 ...
最新文章
- HTML标签元素的分类
- Python多继承基础
- [Python] 制作启动uiautomator2 的web版 uiautomatorviewer2 批处理启动
- 对谈|人工智能来了,翻译们会失业吗?
- IIS中部署vue程序,刷新直接404
- 为支持nginx高并发而修改的一些Linux内核参数
- redis数据结构小结
- R语言colorRampPalette函数-创建颜色梯度(渐变色)
- uniapp 微信分享
- 群晖docker火狐_群晖 篇一:群晖Docker下搭建ubuntu开发环境
- 推土机距离_推土机工程师指南
- 思考互联网发展三阶段
- 以自动开发票为例,解析RPA(机器人流程自动化)在财务场景的使用
- C语言上学期整理(第6章)
- window11安装JDK1.8【jdk-8u121】
- 2022年尿素行业分析
- 千锋深圳python培训
- 03-Mybatis的关键核心类说明
- 多家支付公司完成“备付金”100%交存三方支付行业纷纷寻求破局
- dayjs 中文文档