前言

《保你平安》今天上映诶,有朋友看过吗,咋样啊

这是我最近比较想看的电影了,不过不知道这影评怎么样,上周末的点映应该是有蛮多人看的吧,可以采集采集评论看过的朋友发出来的评论,分析分析

这周刚好双休,正正好就可以去看看

okok,话不多说,咱就开始吧

开发环境

  • Python 3.8
  • Pycharm

代码实现

基本思路

数据来源分析:

  1. 明确需求:
  • 采集的网站是什么?
  • 采集的数据是什么?
    评论相关数据
  1. 抓包分析相关数据来源
    通过浏览器自带开发者工具进行抓包分析 <重点>
  • 打开开发者工具: F12 或者 鼠标右键点击检查选择network
  • 刷新网页: 让本网页的数据内容重新加载一遍
  • 关键字搜索: 通过关键字<要的数据>, 搜索查询相对应的数据包
  1. 利用获取的数据进行可视化分析

【完整源码文末名片获取】

发送请求

# 请求链接
690643772 ### 源码领取
url = f'https://****/subject/35457272/comments?start=20&limit=20&status=P&sort=new_score'
# 伪装模拟
headers = {# User-Agent 用户代理, 表示浏览器基本身份标识'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/101.0.0.0 Safari/537.36'
}
# 发送请求
response = requests.get(url=url, headers=headers)
# <Response [200]>
print(response)

解析数据

# 把获取下来html字符串数据 <response.text>, 转成可解析对象 <Selector xpath=None data='<html lang="zh-CN" class="ua-windows ...'>
selector = parsel.Selector(response.text)  # ---> 你现金是美元, 没办法在中国使用 <先去银行兑换RMB>
# 第一次提取, 所有div标签
divs = selector.css('div.comment-item')
# for循环遍历, 把列表里面元素一个一个提取出来
for div in divs:name = div.css('.comment-info a::text').get()  # 昵称rating = div.css('.rating::attr(title)').get()  # 推荐date = div.css('.comment-time::attr(title)').get()  # 时间area = div.css('.comment-location::text').get()  # 地区votes = div.css('.votes::text').get()  # 有用short = div.css('.short::text').get().replace('\n', '')  # 评论# 数据存字典里面dit = {'昵称': name,'推荐': rating,'时间': date,'地区': area,'有用': votes,'评论': short,690643772 ### 源码领取}

写入数据

f = open('保你平安.csv', mode='a', encoding='utf-8-sig', newline='')
csv_writer = csv.DictWriter(f, fieldnames=['昵称','推荐','时间','地区','有用','评论',
])
csv_writer.writeheader()

可视化展示

读取相关数据

df = pd.read_csv('保你平安.csv')
df.head()

推荐分布

import pyecharts.options as opts
from pyecharts.charts import Piedata_pair = [list(z) for z in zip(evaluate_type, evaluate_num)]
data_pair.sort(key=lambda x: x[1])c = (Pie(init_opts=opts.InitOpts(bg_color="#2c343c")).add(series_name="豆瓣影评",data_pair=data_pair,rosetype="radius",radius="55%",center=["50%", "50%"],label_opts=opts.LabelOpts(is_show=False, position="center"),).set_global_opts(title_opts=opts.TitleOpts(title="推荐分布",pos_left="center",pos_top="20",title_textstyle_opts=opts.TextStyleOpts(color="#fff"),),legend_opts=opts.LegendOpts(is_show=False),).set_series_opts(tooltip_opts=opts.TooltipOpts(trigger="item", formatter="{a} <br/>{b}: {c} ({d}%)"),label_opts=opts.LabelOpts(color="rgba(255, 255, 255, 0.3)"),)690643772 ### 源码领取
)
c.render_notebook()

地区分布

import pyecharts.options as opts
from pyecharts.charts import Piedata_pair = [list(z) for z in zip(area_type, area_num)]
data_pair.sort(key=lambda x: x[1])d = (Pie(init_opts=opts.InitOpts(bg_color="#2c343c")).add(series_name="豆瓣影评",data_pair=data_pair,rosetype="radius",radius="55%",center=["50%", "50%"],label_opts=opts.LabelOpts(is_show=False, position="center"),)690643772 ### 源码领取.set_global_opts(title_opts=opts.TitleOpts(title="地区分布",pos_left="center",pos_top="20",title_textstyle_opts=opts.TextStyleOpts(color="#fff"),),legend_opts=opts.LegendOpts(is_show=False),).set_series_opts(tooltip_opts=opts.TooltipOpts(trigger="item", formatter="{a} <br/>{b}: {c} ({d}%)"),label_opts=opts.LabelOpts(color="rgba(255, 255, 255, 0.3)"),)
)
d.render_notebook()

这样分析下来,好像还不错呀,应该是值得一看的

这周末可以冲冲咯

最后

今天的文章分享到这里就结束了,要准备计划明天出去看完电影该吃些啥了哈哈

祝你们有个愉快的周末~

有什么关于python的不懂的问题可以点击文末名片进行学习交流哦

Python如何获取大量电影影评,做可视化演示相关推荐

  1. 完全小白篇-用python爬取豆瓣电影影评

    完全小白篇-用python爬取豆瓣影评 打开豆瓣电影 随机电影的所有影评网页 跳转逻辑 分析影评内容获取方法 逐一正则提取影评 针对标签格式过于多样的处理 针对提出请求的频率的限制 存储方式(本次sq ...

  2. python爬虫tableau数据分析_完美!Python爬招聘数据,Tableau做可视化分析

    原标题:完美!Python爬招聘数据,Tableau做可视化分析 交流群预热好久的可视化交互大屏来啦 1.项目背景 随着科技的飞速发展,数据呈现爆发式的增长,任何人都摆脱不了与数据打交道,社会对于&q ...

  3. Python采集剧本杀店家数据信息,做可视化演示

    前言 哈喽啊,友友们 有喜欢玩桌游或者剧本杀的吗 其实我自己对这个不太感兴趣哈哈,但是也玩过 正好又有朋友约着出去,就是不知道哪家店更值得去 所以趁着还有几天就用python来采集一些 店家的数据信息 ...

  4. Python网络爬虫爬取招聘数据(利用python简单零基础)可做可视化

    爬取Boss直聘相关的招聘数据 一.相关需求分析 1.目的 二.直聘网页结构分析 1.网页相关值的查找 2.网页的下一页规律查找 三.Python相关的第三库介绍 1.Urllib的介绍 (1)url ...

  5. Python爬猫眼电影影评及可视化 Robin NJU

    1.Fiddler4抓包分析影评数据接口 1.1 基本设置 ①电脑端:下载Fiddler4 设置:tools-options-connections-allow remote computers to ...

  6. Python实战——全球疫情数据采集, 并做可视化

    前言 大家早好.午好.晚好吖~ 知识点: 爬虫基本流程 requests 发送请求 re 正则表达式 json 结构化数据解析 开发环境: python 3.8: 解释器 pycharm: 代码编辑器 ...

  7. Python爬虫获取豆瓣电影TOP250

    最近在学python,研究了下,写了两个爬虫成功爬取了一些东西.有一个很黄很暴力,就不放出来了,还有一个比较绿色,简单,适合初学者学习,思路也比较清晰,也方便我以后再捡起来,注释写的很清楚,特把源码放 ...

  8. Python采集二手房源数据信息并做可视化展示

    目录标题 前言 环境使用: 模块使用: python技术实现: <基本流程步骤> 代码展示 尾语 前言 嗨喽~大家好呀,这里是魔王呐 ❤ ~! 环境使用: Python 3.8 jupyt ...

  9. 【Python爬虫实战案例】采集城市桌游商家数据信息,做可视化演示

    前言 这里容我罗嗦几句

最新文章

  1. 论新时代软件测试人员的工作之道(四)自动化测试之单元及集成测试
  2. 谷爱凌的父亲不是谷歌5号员工,但母亲一家都是高学历的运动健将
  3. 如何在Linux下安装PyCharm
  4. linux命令 ps aux | grep xxx详解
  5. PHP 入门 - 9.安全
  6. 函数式编程 lambda表达式
  7. TreeView,TreeNode,TreeNodeCollection 的使用
  8. Maven精选系列--三种仓库详解
  9. mongodb实验报告_Dropwizard,MongoDB和Gradle实验
  10. Linux课程笔记 Crond介绍
  11. 在线重定义的补充测试
  12. 带你重新认识ZooKeeper!java数组长度可变吗
  13. 深度学习图像标注工具
  14. 用python函数画德国国旗代码_给我一面国旗 python帮你实现
  15. 基于ArcGIS的城市住房选址分析(以郑州市为例)
  16. 计算机二级考试vb内容,计算机二级VB考试内容大纲
  17. 基本概念:节点、集群、分片及副本
  18. 1000个已成功入职的软件测试工程师简历经验总结:软件测试工程师简历项目经验怎么写?(含真实简历模板)
  19. iphone系统架构以及各层提供的主要服务
  20. php编写当前日期距高考天数,距离2021年高考天数 2021高考倒计时

热门文章

  1. 在线JSON转PlainText工具
  2. php 如何回车,php怎么替换回车换行
  3. CCF考试笔记(c++)
  4. html %3ca%3e可以传参吗,跨站脚本执行漏洞详解-恶魔上传
  5. 测试开发工作者日志:2020.9.5
  6. 宿迁中学2021高考成绩查询,江苏省宿迁中学2019年高考喜报,学生高考成绩怎么样...
  7. 比谈恋爱还简单的动态路由协议 不会? 我教你啊~
  8. office2016——学习内容整理
  9. 今天申请了一个gmail邮箱,用于备份资料。
  10. python web开发入门