AcFunViewer是一款离线查询/收藏AcFun/Bilibili网站节目列表的软件，其主要功能包括：
★ 更新acfun/bilibili节目列表到本地，更容易寻找到最近更新的视频
★ 更加强大的节目搜索功能，支持模糊搜索，自定义评分标准，聚类搜索
★ 本地收藏功能，免除网站大姨妈的干扰
★ 导出节目列表文本，分享给网友更加方便，支持自定义导出格式
★ 与视频弹幕下载转换器(AcFunLocalizer）联动，更容易下载视频与弹幕
★ 通过调用外部命令可以方便地使用其它程序浏览或处理结果

更新页：
http://acfun.chunqing286.com

Note:
为了达到最好的效果，请把AcFunViewer与AcFunLocalizer放在同一文件夹下。

Q&A：
Q:为什么运行程序时报找不到mfc100u.dll等类似错误？
A:在1.100版本之后，为缩减程序体积，采用了动态链接方案，请下载完整版的程序包。

Q:模糊查询和精确查询有什么区别？
A:精确查询是指查询的结果完全符合查询条件，比如搜作者名为"爱情上甘岭"的所有视频，那么将得到所有上老师的视频，外加一个"新月冰冰&爱情上甘岭"的视频节目。模糊查询则是指只要所查找内容中包括与查找词中的一部分，就会被当作结果给出，比如上例中搜作者名为“爱情上甘岭”的所有视频，那么除了得到以上结果外，还会得到比如“爱情轻骑兵”等UP主们上传的视频。但是不必担心搜索的质量，搜索结果是以匹配度排序的，最上面的结果是最匹配的，也就是说即使选择模糊查询，搜“爱情上甘岭”的所有视频，“爱情轻骑兵”的视频是不可能排在上老师前面的。

Q:搜索时可否指定多个关键词？
A:可以，中间使用空格隔开。搜索时匹配关键词最多的视频节目会被排在最前面。

Q:什么是自定义评分标准？
A:在普通的搜索中，搜索得分栏中仅显示匹配度（值为0~1，越大表示越匹配）。但有时需要按我们自定义的标准计算一个分数，比如如果要得到点击量Top10的节目，只需要按点击量排序即可（点击点击量一栏的表头），但是如果要得到日平均点击量Top10的节目，那么就只有使用自定义评分标准了。具体方式如下：在查找的高级评分公式栏中输入：$clicknum/$datenum，然后点击查找，在列表中显示的搜索得分就是每个节目的日平均点击量。这里面用到的$clicknum表示节目本身的点击量， $datenum表示节目自投稿日起至今天的天数。

Q:自定义评分标准中都可以使用哪些变量？
A:可以使用的变量列表为：
$id		节目的id号
$index		节目在当前序列中的排列位置（注意这个只有在“在此类别中查找”选择为“当前显示”才有效），最前面的序号为1
$datenum 	节目自投稿日起至今的天数，当天的节目此值为1
$clicknum	节目的点击量
$commentnum	节目评论数
$value		上次查询中该节目的得分，如果基本查询的条件为空；
		本次查询中该节目的得分，如果基本查询的条件不空。

Q:高级查找中的聚类是什么意思？
A:聚类就是说按照某一类元素相同的聚合为同一个，用法较多，举个简单的例子，要找到目前投稿数最多的作者，就把“在此类别中查找”选定为全部，然后将“按此类别聚类”选定为“作者”，点击查找，此时ID栏即为作者投稿数，点击量与评论总数则是此作者所有投稿的点击量与评论数。再按ID排序，即可找到最多的投稿者。另外，在聚类时，还可以使用更高级的自定义评分标准函数，包括：
$count			表示这一类别中的个数
$sum(expression)	表示对同一类别中的节目每个都进行expression计算，然后把计算的结果累加起来
$multi(expression)	与$sum()类似，只不过是累乘
注：$sum和$multi不支持嵌套，但$count可以出现在里面的表达式中。此三者在非聚类查询时不可使用。$sum()和$multi()也可以继续进行运算，比如$sum($clicknum)/$multi($commentnum)也是可以的,虽然这个式子没什么物理意义。

Q:自定义导出格式如何使用？
A:首先点击配置->编辑导出模板, 如果原来定义过模板，则在弹出窗口中会出现原来的模板。模板即是对一条节目的格式设置，比如这样写：
标题： $title
就表示导出的时候在节目的标题前加上"标题："的字样。编辑窗口会对关键字高亮，支持的关键字包括：
$id 		节目ID
$shorturl	不包含"http://acfunIP地址"的acfun url
$url		包含有上述字样的完整的url
$title		标题
$date		形如xxxx-xx-xx的日期
$datenum	节目自投稿日起至今的天数，当天的节目此值为1
$author		节目作者
$abstract	节目原始简介
$abstract_singleline	去掉了换行符的节目简介
$clicknum	节目的点击量
$commentnum	节目的评论数
$value		在查询时获得的评分或者自定义的分数
$resultindex	在查询时排序后在列表中的位置
$type		节目的类别, 动画,音乐等.


Q:除了可以搜标题，作者和简介外，还可以搜其它内容吗？
A:其它限制条件还有待完善，1.000版只提供这些搜索，请关注后续版本。在1.011版本之后,可以直接按投稿序号定位节目.


Q:那个导出功能如何使用？
A:首先在列表中选中你要导出的视频节目（可以使用shift/ctrl键来多选），然后在右键菜单中选择“导出文本”，在弹出提示导出完成的对话框后，直接粘贴到要写的地方即可。

Q:更新功能如何使用？
A:打开程序就会自动更新节目列表，左下角的状态栏会显示更新到哪张列表了，在更新完毕后会有对话框提示。点击“最新更新”就可以看到本次更新到的最新视频！

Q:暂停更新和继续更新的机制是怎么样的?
A:无论是自动更新还是手动更新过程中,原本为"更新数据库"的按钮将变为"暂停更新",此时点击此按钮,更新过程将会在更新完本张列表后暂停更新过程,且该按钮文字更改为"继续更新". 此时可以关闭程序或者关闭计算机, 在下一次打开Viewer的时候,此按钮仍保持"继续更新"的状态,在点击后将按上次更新的位置继续更新. 注意:暂停更新后请在24小时内继续,否则容易造成更新不完整.

Q:有的简介太长，不容易观看，怎么办？
A:勾选"主页"->"视图"->"属性栏"，在属性中可以得到完全的视觉显示效果。

Q:如何让viewer调用我电脑上的firefox来打开节目链接？我不想使用IE。
A:从1.009版开始，viewer增加了对外部程序的调用功能。首先在列表中任意位置点右键，弹出菜单中最下一栏显示为：添加，执行，编辑，删除“外部命令”四项菜单。
点击“添加”按钮则可以在弹出的对话框中填写外部调用的代码（命令行），比如如果要使用firefox打开链接，那么可以写：
"C:\Program Files\Firefox\firefox.exe" "$url"
点击保存，系统会询问保存该外部命令的名称，比如填写“使用firefox打开”，保存后再右键打开菜单时，在执行，编辑及删除的列表中就出现了刚才保存的"使用firefox打开"这个外部命令。
选中一系列节目，然后右键选择"执行外部命令"->"使用firefox打开",viewer即可调用刚才指定的firefox打开这些链接。
编辑与删除的功能如字面所述。
在上面的例子中， firefox.exe的路径需要根据自己电脑上的实际路径设置，请使用绝对路径，并在路径名两端加上英文双引号（以免存在空格导致命令执行不正常）。另外，类似导出模板中的关键字定义，外部命令里也可以写$XXX的关键字，比如本例中就使用了$url,它表示节目网页的完整链接。

Q:如何调用mukioplayer直接播放节目？
A:与调用firefox打开节目类似，可以使用调用外部程序功能自定义外部命令实现。mukioplayer的主页是：http://code.google.com/p/mukioplayer/

Q:如何使查询结果中只包含acfun的节目或只包含bilibili的节目？
A:如果只想在acfun节目单中查找节目，可以在查询之前将“主页”－》“数据库管理”－》“使用bilibili”的勾去掉，同时保证“使用acfun”打上勾，再进行查询即可。只想在bilibili中查询只需保持“使用bilibili”打上勾，而把“使用acfun”的勾去掉即可。

Q:为何没有找到Bilibili的合集与新番专辑的分类？
A:两个分类均合并至“番剧”分类下，目前版本未对此分类做更细的显示。



联系作者：
chunqing286@gmail.com

版本更新列表
v1.2.0.7
* 修正了部分acfun及bilibili列表无法更新的问题
v1.2.0.6
* 修正了acfun列表地址更改无法更新的问题
v1.2.0.5
* 修正了因acfun列表地址更改导致节目单更新不全的问题
v1.2.0.4
* 修正了因acfun和bilibili更改域名导致不能使用的问题
v1.2.0.3
* 修正了查询失效的问题
* 修正了bilibili时间区间查找的问题
* 修正了误报acfun开启了注册的错误
v1.2.0.2
* 修改了批量调用acfunlocalizer下载时解析出错的问题
* 修改了初始建立收藏夹时出现错误的问题
v1.2.0.1
+ 增加自定义收藏夹及子收藏夹名称，增强收藏功能
* 修改了收藏数据库的格式，向下兼容
* 修改了bilibili.us弹幕站点的数据采集代码，以适应改版后的网站
v1.2.0.0
+ 增加了对bilibili.us弹幕站点的数据采集
* 修正了全部节目中不显示短影的错误
* 修正了误报acfun开启了注册的错误
v1.1.0.4
* 更改了acfun的默认站点地址
v1.1.0.3
* 更换了系统图标为Index
v1.1.0.2
+ 增加了对acfun新增的“短影”列表的更新
+ 增加了代理服务器的支持，使用IE代理设置
* “番影”修改为“番剧”
v1.1.0.1
+ 增加了数据库导入的功能
+ 增加了程序图标驻留托盘的功能，具体使用类似于Acfunlocalizer
+ 增加了快速智能查询功能
+ 限制同时只能有一个程序实例运行
* 修正了完全更新时不能对某些已经不在acfun列表中的节目的评论数与点击量更新的bug
- 去掉了在选择下载节目但localizer未开启时弹出的“启动中”的窗口
- 去掉了查询ID功能（此功能包括在智能查询中）
v1.1.0.0
+ 增加了acfun开启注册时自动提醒的功能（程序开启时有效）
* 缩减了exe大小
* 修改了程序图标
v1.0.1.1
+ 增加了暂停更新以及继续更新的功能
+ 增加了id直接定位的功能
* 提高了查询速度
v1.0.1.0
* 改变了双击节目的行为由原来的使用acfunlocalizer下载变为：如果执行过外部命令则重复执行上一条外部命令，否则使用acfunlocalizer下载。该行为不会影响下一个程序实例。
v1.0.0.9
+ 增加了对外部程序调用的自定义模块
v1.0.0.8
* 修正了更新完成之后查询结果乱掉的问题。
v1.0.0.7
* 彻底修正了与acfunlocalizer2.3以后的联动问题
v1.0.0.6beta
* 修改了acfun的IP，更改为域名表示
+ 增加在查找条件中输入完成后直接回车查询，不必再用鼠标点击“开始查找”
v1.0.0.5beta
* 因为acfunlocalizer2.2的更新导致可能无法联动,本版本修正了该问题
+ 增加了一个导出关键字 $type 表示节目的类别.
v1.0.0.4beta
* 修改了除0导致结果错误
* 修改了在全部节目显示中出现的某些节目重复显示的错误
+ 增加了列表列宽的记录,调整好的列宽在下一次打开程序时会保持
v1.0.0.3beta
+ 增加了列表中节目类别的显示
+ 增加了文章类节目的更新与查找（只限简介，不包括全文搜索）
+ 增加了完全更新（连同点击量，评论数一起更新，花费时间长，慎用）
+ 增加了复制链接到剪贴板的快捷右键菜单
v1.0.0.2beta
+ 随风格变化的蓝白条纹显示
+ 增加了acfun主页与软件更新链接
+ 增加了最新更新的条数显示
+ 增加了最新一周视频的快捷方式
* 控制了自动更新的频率，不会每次开启软件就进行更新，目前间隔至少为4小时
* 优化了开启与关闭的速度
* 增大了列表字体，更加清晰
* 修复了某些数据库中特殊字符解析的错误
* 修复了搜索区分大小写的bug
* 去掉了地址与简介在主列表的显示
v1.0.0.1beta
+ 时间区间查询
+ 自定义评价分数
+ 匹配度和自定义评价分数的显示
+ 聚类查询
+ 自定义导出格式
+ 导出到文件
v1.0.0.0beta
+ acfun节目列表更新
+ acfun节目本地查询（精确/模糊）
+ acfun节目收藏
+ acfun节目列表导出
+ 图标为Ac娘