Library of Short Stories 下载器
从 https://www.libraryofshortstories.com 下载英语短篇故事。
功能特性
- ✅ API 直接获取: 无需浏览器,直接调用网站 API
- ✅ 断点续传: 中断后自动从上次位置继续
- ✅ 后台运行: 支持后台下载,不影响其他操作
- ✅ 7秒间隔: 礼貌下载,避免被封
- ✅ 元数据保存: 保存作者、年份、类型等信息
- ✅ 纯文本输出: 去除 HTML 标签,干净阅读
快速开始
1. 获取故事索引(Phase 1)
./start.sh fetch
这会从 API 获取最多 1000 个故事的链接,保存到 config/stories_index.json
2. 下载故事(Phase 2)
前台模式(适合少量下载):
./start.sh download
后台模式(推荐,适合大量下载):
./start.sh download-bg
3. 查看状态
./start.sh status
4. 查看日志
./start.sh log # 查看最近日志
tail -f logs/download.log # 实时跟踪
5. 停止下载
./start.sh stop
存储结构
/home/ubuntu/media/libraryofshortstories/
├── the-adventure-of-the-red-circle/
│ ├── content.txt # 故事正文
│ └── metadata.md # 元数据
├── the-1000000-bank-note/
│ ├── content.txt
│ └── metadata.md
└── ...
索引文件格式
config/stories_index.json:
{
"fetch_date": "2026-03-27T10:00:00",
"total_available": 1500,
"max_limit": 1000,
"stories": [
{
"id": 1,
"title": "The £1,000,000 Bank-Note",
"author": "Mark Twain",
"code": "the-1000000-bank-note",
"url": "https://www.libraryofshortstories.com/onlinereader/the-1000000-bank-note",
"status": "downloaded",
"download_date": "2026-03-27T10:05:00"
}
]
}
技术细节
- 下载间隔: 7 秒
- 超时设置: 30 秒
- 重试机制: 失败标记为 failed,下次运行会重试
- 并发数: 单线程,避免被封
注意事项
- 下载约 1000 个故事需要约 2 小时 (1000 × 7秒)
- 建议首次使用后台模式
./start.sh download-bg - 可以安全中断 (Ctrl+C 或
./start.sh stop),进度会自动保存