前些日子入了PS4的某著名游戏2017, 寻小妖刷ML中.  不得不说刚开始的时候,涛哥坤哥的解说感觉颇为带感.  一个月后...还是关音量吧,解说词太贫乏了

在寻小妖的过程中, 突发奇想看看某著名论坛的数据有没有什么特别的地方,于是scrapy走起...

被服务器ban了几次后, 扒拉下来2w多主贴,30多w回帖存入sqlite数据库

[数据清洗]

使用xpath清洗HTML代码, 筛出板块,帖子内容,作者,时间等等等

删掉爬虫乱跑其他板块扒拉下来的帖子

这第一步清洗说起来简单, 倒也花了不少时间. 结果剩下的如下

足球游戏论坛数据分析--简单粗暴的贝叶斯

sqladmin不支持中文我也没办法 -_-!

[分析]

说实话刚拿到这些数据,我是一脸矇逼的, 当初匆匆上马scrapy, 完全没考虑到分析什么, 数据也抓得不多. 算了,看看能做什么吧, 懒得再跑爬虫,省电

首先看到, 部分帖子作者给标上了主题, 如[PS4][XBOX360], 统计一下各主机的帖子吧:

select category, count(0) from articles group by category

 结果

足球游戏论坛数据分析--简单粗暴的贝叶斯

其他是什么鬼? 删了 :-(

看到大量空的category, 我上去论坛看了一下, 原来大部分作者发帖都是懒得选择主题的, 象"pes2017真的很棒一个**老粉自白"这种, 自称老粉的绝壁是PS主机用户啊.

那就尝试一下把category是空的帖子做下分类吧.

 

文档分类, 词语向量跑不掉, jieba分词走起

conn = sqlite3.connect('expData2.db')
conn.text_factory = str
rows = conn.execute('select * from articles ').fetchall()
conn.close()

rmvList = ['x','y','uj']  #移除部分无用词

f1=codecs.open('forum_all.txt','w','utf-8')
j = 1
for row in rows:
     wList = ''
     words = row[2] + row[5]
     keys = jieba.posseg.cut(words)
     for k in keys:
          if k.flag not in rmvList:
               wList += ' ' + k.word
     f1.write(wList)
     f1.write('\n')

     j += 1
     if j%1000 ==0:
          print 'Write %dk records...' %(j/1000)

f1.close()
print 'Completed.'
View Code

相关文章:

  • 2022-12-23
  • 2021-11-04
  • 2021-08-31
  • 2021-07-13
  • 2021-04-02
  • 2021-11-12
  • 2021-10-13
猜你喜欢
  • 2021-10-02
  • 2021-07-31
  • 2021-08-07
  • 2021-11-06
  • 2021-12-21
相关资源
相似解决方案