# 小说爬虫 **Repository Path**: ChenYLhuman/reptile-introduce ## Basic Information - **Project Name**: 小说爬虫 - **Description**: 小说爬虫的练习项目,封装 xpath 与 request 库 - **Primary Language**: Python - **License**: BSD-3-Clause - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 3 - **Forks**: 6 - **Created**: 2020-12-12 - **Last Updated**: 2024-05-27 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # ReptileIntroduce #### 介绍 小说网站爬虫 不得不说,Python的线程和进程就仿佛在狗屎堆上打滚 #### 需求 python 3.x #### 类库 lxml #pip install lxml requests #pip install requests billiard #pip install billiard #### 介绍2 ```bash python .\runPythonSprites.py -f .\findKeyDir -get -db -rp 2 python .\rebuildFindKeyWordFile.py .\fileKerIniDir python .\removeInFileKeyWork.py -s fileKerIniDir/火影.txt -d fileKerIniDir/综漫.txt -o fileKerIniDir/其他综漫.txt -o 名字 python .\reGetNovelNameS.py -i out/find ``` ## 参数说明 ``` runPythonSprites.py 爬虫脚本的总体调用脚本 -p 指定查找路径(文件夹)[新版是无效的] -f 指定关键字文件[新版支持文件夹(它将会自动递归查找所有 txt 文件)] -af 目标为目录,将会自动获取目录中的所有文件,并且填充到 -f 选项 -k 指定关键字,与 -f 可以联合使用 -s 指定关键字文件切割,默认为换行符 -get 将会自动调用爬虫脚本,添加参数为运行指定脚本。如: -get hgq26 运行 hgq26.py,后缀 .py 可忽略,没有输入参数为运行已知脚本(参考 runPythonSprites.py 中 runStrpiteList 变量) -ig 或 ignore 将会跳过该脚本的运行 -db 选择从数据库文件中导出信息[新版默认直接写入文件,但单个 py 的网站爬虫可以忽略] -adb 选择从数据库文件中导出信息,并且全集中导出 all.txt -rp 筛选过期的小说 -isp 使用对等的配置路径(相等的小说名称则去除),默认使用 /out/ini/filter/jumpOut/jumpOut.ini,使用 mn 选项生效 -hsp 使用存在的配置路径(如果小说名称中包含单词则去除),默认使用 /out/ini/filter/filter/filter.ini,使用 mn 选项生效 rebuildFindKeyWordFile.py 查找配置文件的总调整,会删除所有查找到的文件的关键字,删除重复并且排序有效内容 支持目录与文件参数,若输入目录,则会自动递归查找文件 -af 自动搜索路径(该路径包括文件与目录,目录时,将会递归枚举所有文件),并把所得赋予到 -f 选项下 removeInFileKeyWork.py 删除指定文件的关键字 -s 需要删除的关键字文件列表(可以多个文件,从该文件当中获取关键字)(去掉所有空格之后,相等比较) -h 需要删除的关键字文件列表(可以多个文件,从该文件当中获取关键字)(去掉所有空格之后,包含比较) -d 需要被删除的关键字文件列表(可以多个文件,若不存在 -o,则使用第一个文件当做输出,该文件是被操作的文件) -o 设置输出文件 -k 手动指定关键字 [无选项] 会重新排序该指定的路径下的所有文件,该功能接收文件夹与文件路径(removeInFileKeyWork.py out/ini/downLoad.ini : 该命令将会排序 downLoad.ini 文件,排除重复并且重新写入) reGetNovelNameS.py -i 输入路径 -o 输出路径,仅仅输出一个文件 ``` # 案例 ```bash removeInFileKeyWork.py out/ini/overKey out\ini\filter.ini_runtime.txt -s out/ini/overKey -d out\ini\ingFindInDBFiles ``` 重新整理 out/ini/overKey 路径 out\ini\filter.ini_runtime.txt 路径 删除源取自 out/ini/overKey 删除目标取自 out\ini\ingFindInDBFiles # 配置文件 ### out/ini/downLoad.ini 配置网站的小说获取限制 ### out/ini/filter.ini 配置网站小说获取时候必须忽略的小说(只过滤名称) 小说查找时候也适用 ### out/ini/jumpOut.ini 配置从‘数据库’中获取小说时候,跳过的小说(小说名称完全匹配) ### out/ini/types.ini 配置网站小说获取的类型