项目背景与意义

股民情绪分析的重要性: 投资者情绪会对股票价格和市场产生显著影响,通过爬取与分析在线评论,可捕捉情绪变化,理解市场动态,为投资决策提供有价值的参考。

项目目的

本项目通过Python爬虫抓取东方财富网特定股票的散户评论,并运用自然语言处理(NLP)技术中的SnowNLP库进行情感分析,探索用户情绪的时间变化趋势。

数据源与获取方法

数据源简介

数据获取技术栈

  • Python版本:3.x
  • 核心库
  • selenium:模拟浏览器行为,用于动态页面爬取。
  • PhantomJS:无头浏览器,配合selenium使用。
  • re:正则表达式,文本清洗。
  • json:JSON数据处理。

爬虫实现细节

爬虫类定义

  • 类名Crawler
  • 构造函数参数
  • stocknum:股票代码
  • page:页面编号
  • 初始化步骤
  • 设置URL格式
  • 配置PhantomJS的DesiredCapabilities,如资源超时时间等
  • 初始化PhantomJS驱动

核心方法解析

  • crawAllHtml(url)
  • 模拟浏览器访问指定URL,等待页面加载完成

  • getNewUrl(url)

  • 将新URL添加到集合中

  • filterHtmlTag(htmlStr)

  • 使用正则表达式去除HTML标签、脚本、样式等,保留纯文本内容

  • getData()

  • 调用crawAllHtml方法加载页面
  • 通过XPath定位评论列表,提取每条评论中的信息