千家信息网

Python如何爬取微信读书实现读书免费自由

发表于:2024-12-12 作者:千家信息网编辑
千家信息网最后更新 2024年12月12日,这篇文章主要介绍了Python如何爬取微信读书实现读书免费自由,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。前情提要不知道用微信读书的
千家信息网最后更新 2024年12月12日Python如何爬取微信读书实现读书免费自由

这篇文章主要介绍了Python如何爬取微信读书实现读书免费自由,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

前情提要

不知道用微信读书的朋友多不多,这里顺便安利一下哈。

我目前看电子书的话基本都是在用微信读书,毕竟无限卡真香。

在微信读书上,不仅很多正版的Python书籍电子书可以直接看,还可以在阅读的同时看别人写的标注。

但是无限卡对于小说不太友好,只能阅读开头的章节,后面的章节就需要变相付费了。

虽然知道番茄小说,七猫小说这种都能免费看,但是实在不愿意为了一部小说再多下一个软件。

幸亏微信读书出了一个功能--可以自己上传书籍,支持支持txt、pdf、epub格式。

这就给了我一个想法,只需要将小说下载到本地,再导入到微信读书不就成了。

下载小说方法贼简单,用Python也行,搜搜专门打包好的下载器也成。不过我记得两年前刚学Python时自己练习写过笔趣阁的爬虫,这就翻出来用用。

爬取小说

原来代码是找到了,但是很尴尬,我爬取的那个网站404了。

不过目前笔趣阁遍地都是,也分不清到底谁是"正版"的?

还有个比较好的消息,很多家连网页模板都是一模一样,你的爬虫改改地址就能接着用了,这是妙啊。

于是乎,我又随便找了一家"笔趣阁"。

今天我们就以我吃西红柿近期完结的沧元图为例,可以看到在这个笔趣阁网站里,小说沧元图的网址url是

https://*********/html/2292/

同时,《沧元图》所有的章节也都罗列在本页面。

我觉得先爬取所有的章节名和对应的url网址,分别保存到列表中。然后再使用requests爬取,并依次写入txt文档中。

网页结构并不复杂,也没有反爬措施。大概20行代码即可下载

for i, j in zip(urls, names):    res_text = requests.get(url, headers=header).text    zj_html = etree.HTML(res_text)    texts = zj_html.xpath('//*[@id="content"]/text()')    texts2 = zj_html.xpath('//*[@id="content"]/*/text()')    text = '\n'.join(texts).strip()+'\n'.join(texts2).strip()    with open('novels_n.txt', 'a', encoding='utf8') as f:        f.write(f'{j} \n {text} \n')        print(f'{novels_n}/{j},正在下载...')

这样我们就爬取了小说《沧元图》,并将它保存成txt文档。

通过\n使得章节名都与正文分割开。

白嫖小说

下面的步骤就更简单了,只需要在微信读书的网页版中,点击【传书到手机】,上传刚刚爬取生成的《沧元图》。

导入成功。

单击【立即阅读】,享受一下劳动成果。

整体段落和文字都没什么问题。

再看一下章节目录,也是按照正常的目录进行排版的。

非常完美!

感谢你能够认真阅读完这篇文章,希望小编分享的"Python如何爬取微信读书实现读书免费自由"这篇文章对大家有帮助,同时也希望大家多多支持,关注行业资讯频道,更多相关知识等着你来学习!

0