Python 爬虫抓取小说并保存为 TXT 文件教程
网络小说本地化存储常需下载为 TXT 格式。本文介绍使用 Python 爬虫抓取小说内容并保存的方法。
一、前期准备:环境与工具
1. 安装 Python 环境
确保电脑已安装 Python(推荐 3.7 及以上版本),可通过 Python 官网 下载安装,安装时记得勾选'Add Python to PATH'(自动配置环境变量)。
2. 安装必要库
本次爬虫需要用到两个核心库:
requests:用于发送 HTTP 请求,获取网页内容;BeautifulSoup4:用于解析 HTML 页面,提取小说章节和内容。
打开命令行(Win+R 输入 cmd,Mac 打开终端),输入以下命令安装:
pip install requests beautifulsoup4
3. 选择目标小说网站
本次以免费小说测试网站(示例:https://www.xsbiquge.com/15_15338/,仅用于教学,请勿爬取付费或有版权保护的网站)为例,爬取小说《诡秘之主》的正文内容。
注意:爬取前需遵守网站
robots.txt协议(访问网站域名 +/robots.txt可查看),且不得用于商业用途,尊重版权方权益。
二、爬虫核心逻辑拆解
- 访问小说目录页,获取所有章节的标题和跳转链接;
- 逐个访问章节链接,提取章节正文内容;
- 将章节标题 + 正文按顺序写入 txt 文件,保存到本地。
三、手把手编写爬虫代码
第一步:导入库并设置基础参数
新建一个 Python 文件(如 novel_crawler.py),写入以下代码:
import requests
from bs4 import BeautifulSoup
import time
# 目标小说目录页 URL(可替换为自己想爬的小说目录页)
catalog_url = "https://www.xsbiquge.com/15_15338/"
# 请求头:模拟浏览器访问,避免被网站反爬
headers = {
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36"
}
User-Agent:伪装成浏览器访问,防止网站识别为爬虫而拒绝请求,可通过百度'我的 User-Agent'获取自己的浏览器标识。
第二步:爬取章节列表(标题 + 链接)
在上述代码后继续添加:
def get_chapter_list():
:
response = requests.get(catalog_url, headers=headers, timeout=)
response.encoding = response.apparent_encoding
soup = BeautifulSoup(response.text, )
chapter_list = soup.find().find_all()
chapters = []
chapter chapter_list:
chapter_title = chapter.text
chapter_url = + chapter[]
chapters.append({: chapter_title, : chapter_url})
()
chapters
Exception e:
()

