淘股吧博客爬虫
本技能用于爬取和获取淘股吧(taoguba.cn)的博客文章,淘股吧是中国知名的股市社区。
功能特点
- 获取特定用户的今日博客文章
- 获取最新 N 篇博客文章的完整内容
- 增量订阅(仅获取新文章)
- 按天数获取历史博客(需要 Cookie)
- Cookie 认证支持
- 将内容保存到本地文件
使用方法
基本使用(无需登录)
from scripts.taoguba_crawler import TaogubaBlogCrawler
# 初始化爬虫(使用用户ID)
crawler = TaogubaBlogCrawler('5894557')
# 获取今日博客
blogs = crawler.get_today_blogs(include_content=True)
# 获取最新5篇博客
blogs = crawler.get_latest_blogs(count=5, include_content=True)
# 检查新博客(增量订阅)
blogs = crawler.get_new_blogs(include_content=True)
# 保存到文件
crawler.save_to_file(blogs, 'output.txt')
使用 Cookie 获取历史数据
from scripts.taoguba_crawler import TaogubaBlogCrawler
# 方式1:初始化时传入 Cookie
crawler = TaogubaBlogCrawler('5894557', cookie='your_cookie_string')
# 方式2:运行时设置 Cookie
crawler = TaogubaBlogCrawler('5894557')
crawler.set_cookie_from_browser('your_cookie_string')
# 获取最近7天的博客
blogs = crawler.get_blogs_by_days(days=7, include_content=True)
# 保存到文件
crawler.save_to_file(blogs, 'blog_7days.txt')
直接运行
python scripts/taoguba_crawler.py
运行后显示菜单:
- 获取今日博客
- 获取最新博客
- 检查新博客(增量订阅)
- 获取最近N天博客 (需要Cookie)
- 设置Cookie
- Cookie获取帮助
Cookie 获取方法
方法一:Chrome/Edge 浏览器
- 登录 https://www.tgb.cn
- 按 F12 打开开发者工具
- 切换到 "Network" 标签
- 刷新页面
- 点击任意请求
- 在 Headers 中找到 Cookie 字段
- 复制整个 Cookie 值
方法二:使用 EditThisCookie 扩展
- 安装 EditThisCookie 浏览器扩展
- 登录淘股吧
- 点击扩展图标
- 点击 "Export" 导出 Cookie
输出文件
blog_YYYY-MM-DD.txt- 今日博客blog_latest.txt- 最新博客blog_new.txt- 新博客(增量)blog_Ndays.txt- 最近N天博客cookies.txt- Cookie 缓存文件crawl_history.json- 爬取历史记录
配置说明
编辑脚本中的 user_id 以订阅不同的博主:
user_id = '5894557' # 淘股吧博主ID
依赖包
pip install requests beautifulsoup4
博客文章结构
每篇博客文章包含:
title- 文章标题time- 发布时间link- 原文链接views- 浏览/回复数is_jinghua- 是否为精华帖content- 完整正文内容
API 说明
TaogubaBlogCrawler 类
| 方法 | 参数 | 说明 |
|------|------|------|
| __init__ | user_id, cookie=None, cookie_file=None | 初始化爬虫 |
| set_cookie_from_browser | cookie_str | 设置并保存 Cookie |
| has_cookie | - | 检查是否已设置 Cookie |
| get_today_blogs | include_content=True | 获取今日博客 |
| get_latest_blogs | count=5, include_content=True | 获取最新N篇 |
| get_new_blogs | include_content=True | 增量获取新博客 |
| get_blogs_by_days | days=7, include_content=True | 获取最近N天博客 |
| save_to_file | blogs, filename=None | 保存到文件 |
扫码联系在线客服