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
相关推荐
武超杰5 分钟前
Spring 纯注解配置全解析(进阶版)
java·开发语言
机器视觉知识推荐、就业指导7 分钟前
LVGL真能动摇Qt的地位吗?
开发语言·qt·系统架构
add45a9 分钟前
C++代码移植性设计
开发语言·c++·算法
平常心cyk9 分钟前
Python基础快速复习——集合和字典
开发语言·数据结构·python
阿钱真强道10 分钟前
34 Python 离群点检测:什么是离群点?为什么要做异常检测?
python·sklearn·异常检测·异常·离群点检测
AC赳赳老秦12 分钟前
OpenClaw关键词挖掘Agent配置(附SOP脚本,可直接复制使用)
java·大数据·开发语言·人工智能·python·pygame·openclaw
qq_4160187214 分钟前
数据分析与科学计算
jvm·数据库·python
qq_1481153714 分钟前
分布式系统容错设计
开发语言·c++·算法
leo__52016 分钟前
MATLAB高斯背景建模与目标提取(人体检测)
开发语言·人工智能·matlab
m0_5603964716 分钟前
C++中的享元模式
开发语言·c++·算法