#1 - 2019-6-12 12:22
魔法使
----------------编辑于2019年7月1日---------------------
现在项目已经开工了(开工有几天了),项目地址。
姑且简单介绍下现在干了啥和设计思路吧:
1. 将网页数据结构化,即输入参数为班固米网页URI,返回的是结构化的数据
2. 提供同步、异步接口,方便后续开发
3. 利用sqlite构建了一个本地的数据库,缓存已访问过的网页
接口形式:
现在还在苦逼结构化网页数据中...................详情请访问源代码
----------------编辑于2019年6月15日---------------------
目前计划是采用C++写,内含Boost.Asio网络库,数据库采用 sqlite
数据库做内容的cache和版本控制。
1. 内容cache : 在bgm服务器不稳定时提供内容cache,但是需要曾经访问过。
2. 版本控制:bgm的wiki有更新的情况时,可以索引旧版本,包括cv的证件照、staff表、diff等。(感觉没什么用)
----------------编辑于2019年6月12日-------------------
鉴于开发热情高涨(马上期末考试完),又不想继续摸鱼下去了,想开一个坑,构建一个标准化的Bangumi开发库,我认为它应该包括以下内容:
1. 可被引用性
一个标准化的开发库,它应当是可以被引用到各种应用程序中的。
2. 跨平台性
该库应该有各个平台的实现,以便让不同平台的应用程序能够直接接入。
3. 稳定性与异步性
该库除稳定外,还应当提供内构的异步网络访问系统,防止主线程等待,降低在该库基础上开发新应用软件的难度。
4. 拥有足够的功能
鉴于目前官方API的功能有限,可能的话,该库应当是基于爬虫的,这样才能提供足够的功能接入。
5. 可扩展且功能可自定的
不同情况下需要使用到的功能不一定相同,该开发库应当可自行修改、删除或添加编译模块,以满足足够的可自订性。
想起再加........有什么问题可以在下方留言
现在项目已经开工了(开工有几天了),项目地址。
姑且简单介绍下现在干了啥和设计思路吧:
1. 将网页数据结构化,即输入参数为班固米网页URI,返回的是结构化的数据
2. 提供同步、异步接口,方便后续开发
3. 利用sqlite构建了一个本地的数据库,缓存已访问过的网页
接口形式:
Alice->GetParsedContentSync(“https://bgm.tv/subject/282395”,CachePolicy::FIRST_FROM_CACHE)
Alice->GetParsedContentAsync(“https://bgm.tv/subject/282395”,CachePolicy::FIRST_FROM_CACHE, Callback_proc)
现在还在苦逼结构化网页数据中...................详情请访问源代码
----------------编辑于2019年6月15日---------------------
目前计划是采用C++写,内含Boost.Asio网络库,数据库采用 sqlite
数据库做内容的cache和版本控制。
1. 内容cache : 在bgm服务器不稳定时提供内容cache,但是需要曾经访问过。
2. 版本控制:bgm的wiki有更新的情况时,可以索引旧版本,包括cv的证件照、staff表、diff等。(感觉没什么用)
----------------编辑于2019年6月12日-------------------
鉴于开发热情高涨(马上期末考试完),又不想继续摸鱼下去了,想开一个坑,构建一个标准化的Bangumi开发库,我认为它应该包括以下内容:
1. 可被引用性
一个标准化的开发库,它应当是可以被引用到各种应用程序中的。
2. 跨平台性
该库应该有各个平台的实现,以便让不同平台的应用程序能够直接接入。
3. 稳定性与异步性
该库除稳定外,还应当提供内构的异步网络访问系统,防止主线程等待,降低在该库基础上开发新应用软件的难度。
4. 拥有足够的功能
鉴于目前官方API的功能有限,可能的话,该库应当是基于爬虫的,这样才能提供足够的功能接入。
5. 可扩展且功能可自定的
不同情况下需要使用到的功能不一定相同,该开发库应当可自行修改、删除或添加编译模块,以满足足够的可自订性。
想起再加........有什么问题可以在下方留言
还有就是iOS平台的问题,嘛,就是想大家集思广益下,看看怎么做最方便
nodejs和Python也支持c扩展
我现在就有几台机子闲置可以拿出来用…
从客户端或者其他第四方网站来说,感觉调用http api要比多一个数据库需要自己来链接要方便多了吧
单纯拿cookie算token就好了
我遇到的几个问题是:
1. 验证码输入错误之后的体验非常糟糕(验证码偶尔不自动刷新需要手动点击刷新,输错验证码再退回需要重新输密码),把验证码拿回来再让用户输可以有更好的掌控权
2. 目前是采取oauth授权同时从浏览器拿chii_auth的方式进行登录,然后不知道是不是因为不同的机型自带浏览器不同的原因,有时候就算用户登录了也拿不到chii_auth,或者第一次拿不到再来一次就可以了
3. oauth登录界面如果加载比较慢这时快速点击几下登录会被转到首页而不是oauth授权界面,导致后续处理变得非常麻烦
4. 因为登录界面要加载网页卡太久所以没过审
不过直接输用户名密码应该会有人有所顾及不愿意输吧...