特性
可以通过自定义解析json,对目录页面进行解析并提取章节URL。
对章节源码进行爬取解析获取正文标题和正文。
将正文标题和正文格式化后输出到程序所在目录。
以mingkejie13hao.json为例:
{
"目录提取正则表达式": [
"<h2 class=\"layout-tit\">《.*?》正文</h2>(.*?)</ul>",
"<a href=\"(.*?)\">"
],
"目录下一页提取正则表达式": [
"<span class=\"right\">(.*?)</span>",
"<a href=\"(.*?)\" class=\"onclick\">下一页</a>"
],
"正文提取正则表达式": {
"标题": ["<h1 class=\"title\">(.*?)</h1>"],
"正文": [
"<div class=\"content\" id=\"content\">(.*?)</div>"
],
"下一页": [
"<a id=\"next_url\" href=\"(.*?)\"><i class=\"fa fa-forward\"></i> 下一页</a>"
]
},
"无效行关键词": [
"笔趣阁",
"点击下一页继续阅读"
],
"替换索引": {
"</p>": "",
"<p>": ""
}
}
源码仓库
harry-txt-downloader: 自用小说下载器 (gitee.com)
克隆链接
https://gitee.com/harryxiaocn/harry-txt-downloader.git
帮助信息
python3 main.py -n 小说名字 -u 目录URL -c 抓取使用的正则表达式配置文件路径
根据指定书籍目录页面爬取整本小说
-n 默认值:明克街13号
-u 默认值:https://www.mingkejie13hao.com/book/31532/
-c 默认值:mingkejie13hao.json
正则表达式配置文件特别说明:列表存放的正则表达式除最后一项外,之前的表达式只会使用匹配到的第0个结果,最后一项会使用所有结果。
python3 main.py -h
获取帮助信息
其它
对于那些不能直接获取页面内容的网站,可以使用哈里新开发的爬虫(基于VB.NET+WebView2)