python获取列表的长度(Python获取“双十一”商品评论,做词云分析,一个简单的案例教学)
导读:环境使用...
环境使用
Python 3.8
Pycharm
模块使用
数据来源分析
明确需求 <数据来源分析>
采集数据是什么东西? 通过那个url地址得到想要数据的内容 抓包分析: 浏览器自带工具 --> 开发者工具
I. F12 或者 鼠标右键点击检查 选择 network 点击第二页
II. 复制评论内容, 在开发者工具里进行搜索, 可以直接找对应评论数据包https://club.jd.com/comment/productPageComments.action?callback=fetchJSON_comment98&productId=100029079354&score=0&sortType=5&page=1&pageSize=10&isShadowSku=0&rid=0&fold=1
对于本篇文章有疑问的同学可以加【资料白嫖 、解答交流群:753182387】
数据获取代码实现
发送请求
url = https://club.jd.com/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)
获取数据, 服务器返回响应数据
response 响应对象 response.text 获取响应文本数据 response.json() 获取响应json字典数据解析数据
字典数据类型: 通过键值对提取数据内容 <字典取值>
根据冒号左边的内容[键], 提取冒号右边的内容[值]
# for循环遍历 把列表里面元素一个一个提取出来
for i in response.json()[comments]:
content = i[content]
print(content)
保存数据
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={的, 了, 很, 也},
# 设置背景颜色
# background_color=pink,
contour_width=5,
contour_color=pink,
mask=py
)
# string 数据传入进去
wc.generate(string)
# 导入词云图
wc.to_file(有形状的词云黑.png)
print(string)
声明:本站所有文章 ,如无特殊说明或标注 ,均为本站原创发布 。任何个人或组织 ,在未征得本站同意时 ,禁止复制 、盗用 、采集 、发布本站内容到任何网站 、书籍等各类媒体平台 。如若本站内容侵犯了原著者的合法权益 ,可联系我们进行处理 。
创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!