python获取某电商平台口红数据并制作词云

news/2025/2/19 9:14:03/

目录标题

      • 前言
      • 开发环境:
      • 模块使用
      • 数据来源分析
      • 代码展示
        • 获取数据
        • 制作词云
      • 尾语 💝

前言

嗨喽~大家好呀,这里是魔王呐 ❤ ~!

开发环境:

  • Python 3.8

  • Pycharm

模块使用

  • requests

  • jieba 结巴分词

  • wordcloud 词云

第三方模块安装:

win + R 输入cmd 输入安装命令 或 在pycharm中点击Terminal(终端) 输入安装命令

如果出现爆红, 可能是因为 网络连接超时, 可切换国内镜像源,命令如下:

pip install -i https://pypi.doubanio.com/simple/ requests

数据来源分析

明确需求 <数据来源分析>

  • 采集数据是什么东西? 通过那个url地址得到想要数据的内容

  • 抓包分析: 浏览器自带工具 --> 开发者工具

    I. F12 或者 鼠标右键点击检查 选择 network 点击第二页

    II. 复制评论内容, 在开发者工具里进行搜索, 可以直接找对应评论数据包

代码展示

获取数据

1. 发送请求

请求链接

url = 'https://****/comment/productPageComments.action'

请求参数 --> 字典数据类型 构建完整键值对

data = {# 'callback': 'fetchJSON_comment98','productId': '100029079354','score': '0','sortType': '5','page': page,'pageSize': '10','isShadowSku': '0','rid': '0','fold': '1',
}

模拟浏览器 --> headers 请求头

headers = {'user-agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/101.0.0.0 Safari/537.36'
}

发送请求 requests 模块 get 方法<请求方式>

等号左边: url/params/headers 属于get函数里面形式参数 等号右边 url/data/headers 传入进去参数/变量

response = requests.get(url=url, params=data, headers=headers)

2. 获取数据, 服务器返回响应数据

  • response 响应对象

  • response.text 获取响应文本数据

  • response.json() 获取响应json字典数据

3. 解析数据

字典数据类型: 通过键值对提取数据内容 <字典取值>

for循环遍历 把列表里面元素一个一个提取出来

for i in response.json()['comments']:content = i['content']print(content)

4. 保存数据

with open('口红评论.txt', mode='a', encoding='utf-8') as f:

写入数据内容

    f.write(content)f.write('\n')

制作词云

导入所需模块

# 导入结巴分词  jieba 模块国人开源的
import jieba
# 导入词云
import wordcloud
# 导入读取图片
import imageio
# 读取图片内容
py = imageio.imread('img\\矢量图5.png')

读取文件 返回对象 mode 方式模式 r 读 a追加写入保存 mode 默认是r

f = open('口红评论.txt', encoding='utf-8')

读取内容

text = f.read()

分词 --> 把完整一句话分成很多个单词

string = ' '.join(jieba.lcut(text))

词云图 配置

wc = wordcloud.WordCloud(width=1000, # 宽height=700,  # 高font_path='msyh.ttc', # 词云字体# 设置停用词, 把没有词汇, 停用stopwords={'的', '了', '很', '也'},# 设置背景颜色源码、解答、资源、数据集+V:pytho8987# background_color='pink',contour_width=5,contour_color='pink',mask=py
)

string 数据传入进去

wc.generate(string)

导入词云图

wc.to_file('有形状的词云黑.png')
print(string)

尾语 💝

要成功,先发疯,下定决心往前冲!

学习是需要长期坚持的,一步一个脚印地走向未来!

未来的你一定会感谢今天学习的你。

—— 心灵鸡汤

本文章到这里就结束啦~感兴趣的小伙伴可以复制代码去试试哦 😝

👇问题解答 · 源码获取 · 技术交流 · 抱团学习请联系👇


http://www.ppmy.cn/news/72650.html

相关文章

Spring中的MergedBeanDefinitionPostProcessor有什么作用 ?

Spring中的MergedBeanDefinitionPostProcessor有什么作用 ? 引言调用时机加载bean定义的几种方式postProcessMergedBeanDefinition接口作用小结 引言 MergedBeanDefinitionPostProcessor这个Bean后置处理器大家可能关注的比较少,其本身也只提供了一个bean生命周期回调接口: …

微信小程序vue+nodejs校园快递物流取件及上门服务系统uniapp

系统分为用户和管理员两个角色 用户的主要功能有&#xff1a; 1.用户注册和登陆系统 2.用户查看系统的公告信息 3.用户在线快递下单&#xff0c;支付订单&#xff0c;在线订购快递取件 4.用户在线预约快递&#xff0c;填写快递预约信息 5.用户个人中心在线充值 6.用户个人中心修…

光伏防逆流系统的介绍

安科瑞虞佳豪 5月17日&#xff0c;新疆和田地区洛浦县国家电投洛浦光伏电站&#xff0c;今年2月刚刚并网发电的200兆瓦光伏发电项目坐落于戈壁滩上&#xff0c;占地5500亩的368004块光伏面板在阳光照射下熠熠生辉&#xff0c;为和田地区经济社会发展持续提供着绿色能源。 洛浦…

今天面了个字节拿38K出来的,真是砂纸擦屁股,给我露一手

今年的春招已经结束&#xff0c;很多小伙伴收获不错&#xff0c;拿到了心仪的 offer。 各大论坛和社区里也看见不少小伙伴慷慨地分享了常见的面试题和八股文&#xff0c;为此咱这里也统一做一次大整理和大归类&#xff0c;这也算是划重点了。 俗话说得好&#xff0c;他山之石…

PG事务:隔离级别基础

PG的事务 为了保证事务的ACID特性&#xff0c;rdbms必须要实现并发控制。pg和oracle、mysql(innodb)数据库都使用MVCC来实现并发控制。MVCC通过数据变化时不断生成新版本对象和可查询一定范围的老版本对象来实现并发&#xff0c;MVCC保存数据在某个时间点的快照&#xff0c;读…

SocketTools crack所有安全连接的默认安全协议

SocketTools crack所有安全连接的默认安全协议 在所有HTTP客户端组件中添加了对HTTP/2.0协议的支持。 更新了TLS 1.2(及更高版本)和SSH 2.0的安全选项&#xff0c;以使用Microsoft Windows 11和Windows Server 2022中提供的密码套件。较旧、安全性较低的密码套件已被弃用&#…

MJ discord 添加应用配置

discord 添加机器人 https://discord.com/developers/applications 刷新token后显示&#xff0c;即机器人Token&#xff0c;后续配置到 mj.discord.bot-token 如图勾选后&#xff0c;打开url进行授权 选择Midjourney Bot所在的服务器 勾上这两个选项&#xff0c;点击 Save Cha…

iOS开发提效cocoapods插件cocoapods-util

cocoapods-util介绍 cocoapods-util是一个iOS开发提效的cocoapods插件。 取名util的原因是我想做一个通用的插件&#xff0c;把一些iOS中常用的命令或问题整理起来。 插件中除了package命令是根据cocoapods-packager插件做了修改而来&#xff0c;其余命令都是属于自己总结开…