吖力锅 发表于 2023-9-2 16:19

用python写了一个小说下载器 第一版1.5

本帖最后由 吖力锅 于 2023-9-18 09:34 编辑

PS:上次写的网站有bug,那个bug我修改不了,重新换了个小说网站爬取。
今天有空复习了一下学习过的内容,写了一个爬取小说下载器,比较简单,输入需要下载的小说链接,就会自动下载了。
这个是我想法中的第一版,比较简单
第一版修改了 1.3版本,修改一下代码
第二版需要改成可以搜索小说名称的版本 ,再加一个GUI界面

import re
import requests

mainurl = input("请输入小说链接:")
head = {
    'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/95.0.4638.69 Safari/537.36'
}
res2 = requests.get(url=mainurl, headers=head)
html2 = res2.text
href = re.findall('<a href="(.*?)" title=".*?">', html2)
xiaoshuo = re.findall('<meta property="og:title" content="(.*?)"/>', html2)
for i in href:
    url = f'https://www.ydshu.com{i}'
    headers = {
      'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/95.0.4638.69 Safari/537.36'
    }
    res = requests.get(url=url, headers=headers)
    html = res.text
    wenzhang = re.findall('<div id="htmlContent"><p>(.*?)</p></div>', html, re.S)
    wenzhang2 = wenzhang.replace("<br>", '\n')
    name = re.findall('<h1>(.*?)</h1>', html)
    wz_name = re.sub(r'[<>:""/\\|?*]', '_', name)
    # 将章节内容写入文件
    with open(f'{xiaoshuo}.txt', mode='a', encoding='utf-8') as f:
      f.write(wz_name)
      f.write('\n')
      f.write(wenzhang2)
      f.write('\n')
    print(f"{wz_name}下载成功")





这个是打包好简易版的程序,输入小说链接,键盘回车就可以自动下载了,有兴趣的朋友可以下载来玩一玩
单线程下载版(可以合并在一个txt文本里面,下载速度慢)
https://sw3374629.lanzoub.com/ioopK18pw2ji
多线程版(下载速度快,不过一个章节一个txt文本)
https://sw3374629.lanzoub.com/in1PV18rteyj

WLStone 发表于 2023-9-2 16:27

插针,留下自己的脚步,等你更新好了

Kls673M 发表于 2023-9-2 16:30

你这是固定某个网址吗?

吖力锅 发表于 2023-9-2 16:32

Kls673M 发表于 2023-9-2 16:30
你这是固定某个网址吗?

是的。只能爬取这个网站,我们最熟悉的某阁

jidesheng6 发表于 2023-9-2 16:50

你这个第一章节没有重复下载吧,我去看了小说那边,确实有两个第一章

繁华中的沉寂 发表于 2023-9-2 17:48

因为你把标题放在一段后面了

吖力锅 发表于 2023-9-2 18:30

繁华中的沉寂 发表于 2023-9-2 17:48
因为你把标题放在一段后面了

大佬就是大佬,改好了

jianggu 发表于 2023-9-2 18:30

这个只能爬取固定的网站,希望能写一个通用的爬虫

wfk521 发表于 2023-9-2 18:37

等你后续版本

hackerSQL 发表于 2023-9-2 20:27

页: [1] 2 3 4 5 6
查看完整版本: 用python写了一个小说下载器 第一版1.5