之前的教程里有写过python爬取小说的代码,但如果小说字数很多,爬起来会比较耗时。此时需要结合多线程来加快爬取速度。

代码如下:

import requests
from lxml import etree
import threading#lock
lock = threading.Lock()
def downloads():url = 'https://www.******.net/daomu/guichuideng' #获取链接#伪装headers = {'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/107.0.0.0 Safari/537.36'}lock.acquire()  #进程加锁#发送请求resp = requests.get(url, headers=headers)resp.encoding = 'utf-8'#print(resp.text)#信息筛选e = etree.HTML(resp.text)links = e.xpath('//ul/li/a/@href')  #页面所有章节的链接for i in range(len(links)):resp2 = requests.get(links[i], headers=headers) #分别对每一章进行下载resp2.encoding = 'utf-8'e2 = etree.HTML(resp2.text)volume = e2.xpath('//div[@class="info"]/a/text()')[0]  #每一卷的名字print(volume)title = e2.xpath('//h1/text()')[0]  #每章标题info = e2.xpath('//div[@class="neirong"]/p/text()') #每章内容print(title)info_2 = '\n'.join(info)  #info为列表,转为str字符串with open('鬼吹灯.txt', mode = 'a', encoding='utf-8') as f:f.write('#'+volume+'\n'+'##'+title+'\n'+info_2+'\n\n')lock.release()if __name__ == '__main__':download_1 = threading.Thread(target=downloads)download_1.start()

通过在calibre里设置目录级别:一个#的对应h1级, 2个#对应h2级,再添加一个封面,就可以得到一本有目录可以自动跳转的电子书了

使用python多线程下载网络小说并结合calibre制作电子书相关推荐

  1. Python多线程下载网络URL图片的方法

    Python多线程下载网络URL图片的方法 采用多线程的方法,通过URL地址,下载资源图片 GitHub地址:https://github.com/PanJinquan/python-learning ...

  2. Python多线程下载有声小说

    有经验的老鸟都(未婚的)会在公司附近租房,免受舟车劳顿之苦的同时节约了大把时间:也有些人出于某种原因需要每天披星戴月地游走于公司与家之间,很不幸俺就是这其中一员.由于家和公司离得比较远,我平时在公交车 ...

  3. python 小说下载_Python下载网络小说实例代码

    看网络小说一般会攒上一波,然后导入Kindle里面去看,但是攒的多了,机械的Ctrl+C和Ctrl+V实在是OUT,所以就出现了此文. 其实Python我也是小白,用它的目的主要是它强大文本处理能力和 ...

  4. [工具库]JFileDownloader工具类——多线程下载网络文件,并保存在本地

    本人大四即将毕业的准程序员(JavaSE.JavaEE.android等)一枚,小项目也做过一点,于是乎一时兴起就写了一些工具. 我会在本博客中陆续发布一些平时可能会用到的工具. 代码质量可能不是很好 ...

  5. python多线程下载小姐姐图片

    python多线程下载小姐姐图片 闲谈 思路 实现过程 单线程实现代码功能 问题描述 多线程处理办法 完成效果 闲谈 今日闲来无事,翻看博客,看到一篇关于python自动下载图片的文章,就萌生了也写一 ...

  6. python多线程下载大文件_Python threading多线程断点下载文件的方法

    这是玩蛇网一篇关于Python多线程下载文件方法的代码实例.文中应用到的python模块和方法有httplib.Python urllib2.Python threading多线程模块.python ...

  7. 完全小白篇-使用Python爬取网络小说

    完全小白篇-使用Python爬取网络小说 一.找一个你要爬取的小说 二.分析网页 网页的展示方式 需要用到的库文件 三.向网站发送请求 四.正则提取 五.跳转的逻辑 六.后续处理 七.保存信息进入do ...

  8. Python 多线程下载图片

    多线程下载图片 参考链接: Python标准库-urllib和urllib3 urllib实战2–urllib基础urlretrieve().urlcleanup().info().getcode() ...

  9. 用Python编写自动下载网络小说的脚本

    很多网站都有长篇连载或是分章节的小说可供在线阅读,但如果想要将所有章节下载下来并整理成一个格式良好的文本文件,则是很费功夫的.幸好可以用Python脚本来自动完成所有的工作.下面的两个脚本,将用来演示 ...

最新文章

  1. 如何用最强模型BERT做NLP迁移学习?
  2. java基础学完就直接学ssm_java基础学习笔记3(SSM基础)
  3. Bitmap之位图采样和内存计算详解
  4. eclipse java 运行快捷键_java – 可以使用Eclipse中的键盘快捷方式启动/停止Tomcat吗?...
  5. LeetCode 2109. 向字符串添加空格
  6. python爬虫模拟浏览器的两种方法_python爬虫模拟浏览器访问-User-Agent过程解析
  7. 在死循环中使用Scanner获得键盘输入
  8. 外国谷歌服务器练中国无线,易观:中国无线搜索市场百度谷歌份额超50%
  9. 电子相册系统(三)使用技术
  10. 有生成的日志的监控电脑性能的软件吗_全链路监控:方案概述与对比,看完你就懂...
  11. 算法:剑指 Offer 06. 从尾到头打印链表
  12. 安卓内录声音软件scr_高清录屏大师app下载-高清录屏大师app安卓版下载v3.0.0.23 - 非凡软件站...
  13. 带你玩转 Visual Studio——带你跳出坑爹的 Runtime Library 坑
  14. delete与垃圾回收机制
  15. C语言源代码转变为可执行程序的过程
  16. Flask 学习-22.可插拨视图MethodView类
  17. 如何在Windows 11上的WSL2做到GPU直通,并用Deepracer本地训练炸干电脑的资源(显卡降价了,618等等党还等什么,一起来加入Deepracer的比赛学习交流吧)
  18. RAVDESS语音情感分类数据集的介绍
  19. Linux下搭建FTP服务器教程
  20. 【转】智能合约灵活升级

热门文章

  1. 15年计算机考研大纲,2015计算机考研大纲
  2. 苹果x漫画脸_苹果最新iPhone SE:秒杀安卓的小屏旗舰
  3. vue实现手机通讯录效果
  4. BPM、BPMN介绍
  5. redis也可以根据经纬度查询附近的元素以及计算两个经纬度的距离???
  6. 浏览器配置异常_IE浏览器常见故障及问题解决方法大全
  7. 单目标多目标优化算法的测试函数与解
  8. 程序员去哪里找靠谱的兼职?(附项目库)
  9. 手机最强 Python 编程神器,在手机上运行 Python 不再是梦
  10. java默认字体_设置 Java 系统的默认字体