小爬怡情,中爬伤身,强爬灰灰。爬虫有风险,使用请谨慎,可能是这两天爬豆瓣电影爬多了,今天早上登录的时候提示号被封了(我用自己帐号爬的,是找死呢还是在找死呢 ...),好在后面发完短信后又解封了,^_^。
之前的文章中,已把电影短评数据装进了Mongo中,今天把数据取出来简单分析一下,当下最火的做法是进行词频统计并生成词云,今天说的就是这个。
读取Mongo中的短评数据,进行中文分词
不知道什么原因,我实际爬下来的短评数据只有1000条(不多不少,刚刚好),我总觉得有什么不对,但我重复爬了几次后,确实只有这么多。可能是我爬虫写的有什么不对吧,文末附源码链接,有兴趣的去看看, 欢迎拍砖(轻拍)。
import pymongoimport jiebafrom jieba import analyse# 网页链接 text = Nonewith pymongo.MongoClient(host='192.168.0.105', port=27017) as client: # 获取集合 comments = client.douban.movie_26752088_comments # 不知道为什么爬虫只取到了1000条评论~ print('count:', comments.estimated_document_count()) # pymongo.cursor.Cursor cursor = comments.find() # 遍历数据,这里只遍历短评数据(好在数据量并不太大) text = ''.join(map(lambda doc: doc.get('comment'), cursor))# 对短语数据文本进行分词# 添加自定义分词[jieba.add_word(k) for k in []]# 取Top50的词生成词云# 网页链接基于-tf-idf-算法的关键词抽取tags = analyse.extract_t