swift实现一个小说阅读器(一)


目录


最近在学习swift,我觉得最好的学习是在有基础的情况直接上手项目,这样才能最快的深入这门语言。所以研究搞一个类似于追书神器小说阅读器。

在整个开发过程中刚开始还是用着OC的思想去生硬的转到swift上,写的东西在swift里觉得很蹩脚,后来渐渐的习惯起来,这种感觉还是很不错的!现在状况是工作开发使用OC,业余时间使用swift,目前已经可以自如的在两种语言上切换比如在写OC代码的时候下意思的打";",而在swift中没有这个下意思。。。(扯远了= =#...)


思路



先说说实现的思路吧,因为这个阅读器是在线版的,所以数据源是一个问题,所以打算找一些小说网站读取html代码然后取里面内容节点来使用,这样如果有多个网站就可以实现换源这个功能了,目前对于网站的解析规则都是写死在app里的,后期可能考虑把规则写到后端,避免网站更新而解析规则未同步造成解析失败的问题。

其中小说目录的数据就取网站的排行榜,如果弄的复杂像样点的话可以先抓一下分类然后二级界面是这个分类的小说,如果考虑分页就抓去网站的wap版,pc版也会有分页但是一页的数据可能有百十多个这样就达不到目的了。

然后是目录,因为目录不打算做分页,所以我直接拿的pc版的。

小说内容考虑到pc版的网页上很多东西没用的东西,再加上还可能有广告所以,我抓的是wap版的不分页的数据。


解析



解析html代码使用的是mattt大神的[Ono(斧)][ono-github-url],OC写的
支持XPath 和 CSS 查询
[ono-github-url]: https://github.com/mattt/Ono

Tips: 在拿到网站的data后,网站可能是gbk编码的如果直接解析可能会解析不出来任何东西,所以拿到data之后要转码成UTF-8才行。在这个地方卡了好长时间!!!


最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 14,195评论 4 61
  • 红酒对瓶吹,大碗喝咖啡。 这句话曾经是我的一句qq签名,也是我土鳖的最好证明。这不是我为了哗众取宠特意弄出来的行为...
    鬼扯阅读 2,934评论 0 1
  • 1 猪肺疫——咽部明显肿大呈急性经过。 2 猪炭疽——咽部明显肿大呈慢性经过。 3 猪瘟——没有咽部肿大,各种年龄...
    513f7519d2d7阅读 2,755评论 0 0
  • 我读小学的时候,住的是平房,一、二十户人家在一个院子里,所以每天可以跟院子里大大小小的娃儿们一起玩耍。不记得是哪家...
    桂霏是人才阅读 3,025评论 3 4
  • 最近,人们开始频繁购买报纸,翻阅着新闻,因为他出现了——[Murderer]。这是警察给他取得代号。正如单词...
    東方煮汤阅读 2,532评论 0 0