程序运行大致流程:
① 全新下载模式下:选择相应的下载类别之后,若是按分类批量下载,则程序开始下载该类别所有小说的列表页面,然后获取每篇小说的目录页面(index.html),根据目录页面下载具体章节的正文页面,最后,根据正文页面整理出文本格式的小说文件,每个步骤的操作都写入相应的下载日志文件;若是单本下载、或者按照url列表下载,则直接跳转到获取小说的目录页面(index.html)这个步骤,后续步骤与按分类批量下载相同;
② 增量下载模式下:若是按分类批量下载,则全新下载该类别所有小说的列表页面,然后获取每篇小说的目录页面(index.html),整理出当前的小说列表信息,与上次成功下载/整理的小说列表信息做比较,把上次已经操作过的数据更新到当前小说列表信息文件中,本次操作将只处理新增加的小说及旧有小说中新增加的章节;若不是按分类进行处理的模式,处理过程基本一致,只是操作的对象变成单个小说(按url列表下载N个小说的模式分解成一次只处理一个文件,循环N次处理完毕);
③ 断点续传模式下:读取上次的下载进度,找到续传点,接着下载/整理后续部分
注意事项:
① 本程序支持断点续传,您可以随时终止程序,而无需担心下次会重复/遗漏数据;
② 本程序支持增量下载,您可以在将来的任意时间里下载/整理新增加的小说,无需重复处理已有的数据;
③ "断点续传" 和 "增量下载" 极度依赖下载日志文件,若您需要使用这两个功能,请务必保证下载日志的完整性,切勿随意编辑日志文件;若缺少下载日志文件,有可能以全新下载模式处理数据,会导致重复下载、重复整理;
④ 您可以指定下载时的线程数,在主程序 cmd 文件中修改 threads 的具体值即可(在程序的"初始化全局变量"部分修改),默认为 3 线程,不过html文件较小,调整该参数似乎没有什么效果;您也可以修改下载失败时的重试次数,调整 set "retryTimes=5" 中的数字即可,默认重试5次;
⑤ 每个类别的正文内容保存在 contentFolder 文件夹下单独的文件夹中,以各分类名为文件夹名,再在各类别文件夹创建以"小说名_作者名"为名称的文件夹,在这个文件夹下保存该小说的目录页面文件(index.html)和所有的正文页面文件(1.html、2.html……N.html),该小说的整理结果保存在与该"小说名_作者名"文件夹相同的目录下,并且与文件夹名称相同;也会按照这样的规则创建文件。
⑥ 在程序运行过程中,会在LOG目录下生成以 .log 和 .txt 为后缀的文件,这些文件保存这当前的下载进度信息,是断点续传及增量下载功能的依据,切勿随意编辑。
⑦ 您可以根据配置文件"小说url配置.ini"中的说明随时增减小说url条目,条目数量不限;
⑧ 仅在Win7简体中文旗舰版下测试,理论上支持XP及其之后的系统