Python批量采集某东评论,实现可视化分析

女朋友没事就喜欢网购,买一大堆又不用,总说不合适,为了不让她花冤枉钱,于是我决定用Python写一个采集商品评论的脚本,然后对商品进行分析,这样就不怕踩到坑了!

让我们直接开始本次操作

准备工作

环境安装

  • Python 3.10
  • Pycharm

模块使用

  • 采集数据模块
    -DrissionPage -> pip install DrissionPage
    -csv
    -time
  • 数据可视化
    -pandas -> pip install pandas
    -pyecharts -> pip install pyecharts
    -jieba -> pip install jieba
    -wordcloud -> pip install wordcloud

源码和视频讲解都打包好了,为了让大家更好的学会本次内容,我加班熬夜录制了详细的视频讲解,希望对大家有帮助。

直接文末名片点一下自取即可

基本流程

一、数据来源分析

1.明确需求

明确采集的网站以及数据内容
网址: https://****/10088121691070.html#comment
数据: 评论相关内容

2.抓包分析

通过浏览器开发者工具分析对应数据位置

  • 打开开发者工具
    • F12 / 右键点击检查选择 network 网络刷新网页
  • 通过关键字搜索找到对应数据位置
  • 关键字: 需要什么数据就搜什么数据

数据包地址: https://api.***/

二. 代码实现步骤

requests数据请求

基本步骤: (requests)

1.发送请求: 模拟浏览器对于url地址发送请求
2.获取数据: 获取服务器返回响应数据
3.解析数据: 提取我们需要的数据内容
4.保存数据: 把提取的数据保存本地文件

数据包地址: 参数 h5st (加密)
- 如果需要用requests进行数据获取, 是需要进行逆向解密 (难度)

drissionpage自动化模块

模拟人的行为对于浏览器进行操作: 点击 输入 拖拽 获取数据

  1. 打开浏览器
  2. 监听数据包 -> 直接监听数据链接
    -看数据包是否加载
    -监听数据在执行动作之前
  3. 访问网站
  4. 直接获取响应数据
  5. 解析数据
  6. 保存数据

准备工作

新建一个临时 py 文件,并输入以下代码,填入您电脑里的 Chrome 浏览器可执行文件路径,然后运行。

from DrissionPage import ChromiumOptions

path = r'D:\Chrome\Chrome.exe' # 请改为你电脑内Chrome可执行文件路径
ChromiumOptions().set_browser_path(path).save()

这段代码会把浏览器路径记录到配置文件,今后启动浏览器皆以新路径为准。
另外,如果是想临时切换浏览器路径以尝试运行和操作是否正常,可以去掉 .save() ,以如下方式结合第 步的代码。

from DrissionPage import ChromiumPage, ChromiumOptions

path = r'D:\Chrome\Chrome.exe' # 请改为你电脑内Chrome可执行文件路径
co = ChromiumOptions().set_browser_path(path) page = ChromiumPage(co) page.get('http://DrissionPage.cn')

csv保存数据基本格式

根据你获取的数据不同:
fieldnames 根据提取数据保存在字典中键
encoding=‘utf-8’
如果使用utf-8打开表格文件出现乱码, 改成utf-8-sig

# 导入csv模块 import csv # 创建文件对象
f = open('data.csv', mode='w', encoding='utf-8', newline='') # 字典写入方法
csv_writer = csv.DictWriter(f, fieldnames=['昵称','地区','产品','时间','评论内容'])
# 写入表头 csv_writer.writeheader() """
中间发送请求/获取数据/解析数据代码内容
"""
# 数据保存字典
dit = {} # 写入数据
csv_writer.writerow(dit)

json字典取值

# 键值对取值: 根据冒号左边的内容[键], 提取冒号右边的内容[值]

dit = {'姓名': '自游', '信息':{'性别':'男', '爱好': '无'}, '标签': ['1', '2']}
提取性别信息
dit['信息']['性别']
dit['标签'][0]

数据可视化

pyecharts可视化

官方文档: https://gallery.pyecharts.org/#/README

文档中提供非常多可视化模版
     - 柱状图 / 折线图 / 饼图 / 热力图 / 箱形图...
只需要对于数据进行替换


  • 15
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值