[原创]python-豆瓣电影《肖申克的救赎》评论数据爬取

最终词图效果:

[原创]python-豆瓣电影《肖申克的救赎》评论数据爬取插图

 

第一步:豆瓣电影《肖申克的救赎》评论数据(https://movie.douban.com/subject/1292052/comments?sort=time&status=P)
  1. 爬取前1w条评论
  2. 存储成txt文档
第二步:词频统计可视化展示
  1. 数据预处理
  2. 中文分词
  3. 统计top10的高频词
  4. 可视化展示高频词
第三步:绘制词云图
  1. 根据词频生成词云
第四步:
  1. 审核评论
================================================================
配置准备
  1. 中文分词需要jieba
  2. 词云绘制需要wordcloud
  3. 可视化展示中需要的中文字体
  4. 网上公开资源中找一个中文停用词表
  5. 根据分词结果自己制作新增词表
  6. 准备一张词云背景图(附加项,不做要求)
  7. paddlehub配置
================================================================
#安装jieba分词和词云
pip install jieba
pip install wordcloud
#安装paddle
pip install --upgrade PaddlePaddle
#安装模型
#hub install porn_detection_lstm==1.1.0
pip install --upgrade paddlehub
pip install  numpy
#安装Beautifulsoup
pip install BeautifulSoup4

问题:
1.UnicodeDecodeError: 'utf-8' codec can't decode byte 0xe8 in position 1: invalid continuation byte
解决方法:
1.不使用urlLib换做requests
2.去掉请求头中的 'Accept-Encoding': 'gzip, deflate, br'
3.返回值reponse 转字符串指定编码utf-8
pythonscript"># 'Accept-Encoding': 'gzip, deflate, br',
2.关于cookie
解决方法:
1.去豆瓣请求头中复制cookie设置到请求头中
pythonscript">'Cookie': 'bid=WD6_t6hVqgM'
3.请求返回418的问题
解决方案模拟设置请求头,设置user-agent
pythonscript">'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/94.0.4606.81 Safari/537.36',
4.使用beautifulsoup获取不到评论
解决方法:
第一步:指定解析参数为'lxml'
pythonscript">soupComment = BeautifulSoup(html, 'lxml')
第二步:
findAll方法指定css文件的class名

print('网页内容:', soupComment.prettify()) comments = soupComment.findAll(class_='short')

 

源码地址:

https://gitee.com/mikite/python_sp_shawshank