首頁 > 軟體

Python爬取微信讀書實現讀書免費自由

2021-09-27 13:01:05

大家好,我是小五

前情提要

不知道用微信讀書的朋友多不多,這裡順便安利一下哈。

我目前看電子書的話基本都是在用微信讀書,畢竟白嫖的無限卡真香。

在微信讀書上,不僅很多正版的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爬取小說,再匯入微信讀書,成功白嫖小說閱讀的全部步驟了。

這個方法已經用了幾個月,白嫖了好幾本小說。

趕緊把小技巧分享給大家,快上車吧!

老鐵們,如果想看更多Python改變生活的真實問題案例,來給本文右下角點個贊吧

如果你也有一直想去解決的重複性問題,歡迎在評論區告訴我,大家一起探討一下。

以上就是Python爬取微信讀書實現讀書免費自由的詳細內容,更多關於Python爬取微信讀書的資料請關注it145.com其它相關文章!


IT145.com E-mail:sddin#qq.com