Python爬取小说

爬取小说大致分三步

1.获取网页

2.分析获取内容

3.保存到文本

具体步骤放代码里了,注释很清晰了。

python 复制代码
# 爬取小说

#requests是一个常用的 HTTP 请求库,可以方便地向网站发送 HTTP 请求,并获取响应结果。
#pip install requests
#lxml是python的一个解析库,支持HTML和XML的解析,支持XPath解析方式
#pip install lxml
from lxml import etree
import requests
#网站地址
url = "https://dldl1.nsbuket.cc/xiaoshuo/douluodalu/1.html"
while True:
    #伪装用户
    headers={
        'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36 Edg/124.0.0.0'
    }
    # 发送请求,get方式
    resp = requests.get(url,headers=headers)
    #设置编码
    resp.encoding='utf-8'
    #响应信息
    # print(resp.text)

    # 获取文本
    e=etree.HTML(resp.text)
    info='\n'.join(e.xpath('//div[@class="m-post"]/p/text()'))#章节内容
    title=e.xpath('//h1/text()')[0]#章节标题
    # print(title)
    # print(info)

    # 获取下一章节地址
    url = f'https://dldl1.nsbuket.cc{e.xpath("//td[2]/a/@href")[0]}'
    print(title)

    #保存
    with open('斗罗大陆.txt','a',encoding='utf-8') as f:
        f.write(title+'\n\n'+info+'\n\n')

    #退出循环
    if url=='https://dldl1.nsbuket.cc/xiaoshuo/douluodalu/217333.html':
        break
相关推荐
小屁孩大帅-杨一凡2 分钟前
一个简单点的js的h5页面实现地铁快跑的小游戏
开发语言·前端·javascript·css·html
Amo Xiang10 分钟前
Python 常用模块(八):logging模块
python·logging·日志
顾子茵11 分钟前
c++从入门到精通(四)--动态内存,模板与泛型编程
java·开发语言·c++
森哥的歌12 分钟前
Python多线程
python·编程·多线程·并发·threading
电信2301杨臣27 分钟前
QT---信号与槽
开发语言·qt
明月看潮生34 分钟前
青少年编程与数学 02-019 Rust 编程基础 07课题、字符串
开发语言·青少年编程·rust·编程与数学
抽风的雨61035 分钟前
【python基础知识】Day26 函数
开发语言·python
编程有点难1 小时前
Python训练打卡Day22
开发语言·python·机器学习
天机️灵韵1 小时前
字节开源FlowGram与n8n 技术选型
人工智能·python·开源项目
兮兮能吃能睡2 小时前
Python之with语句
数据库·python