淘宝商品数据爬取商品信息采集数据分析API接口详细步骤展示(含测试链接)

本文主要是介绍淘宝商品数据爬取商品信息采集数据分析API接口详细步骤展示(含测试链接),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

01 数据采集

数据采集是数据可视化分析的第一步,也是最基础的一步,数据采集的数量和质量越高,后面分析的准确的也就越高,我们来看一下淘宝网的数据该如何爬取。点此获取淘宝API测试key&密钥

淘宝网站是一个动态加载的网站,我们之前可以采用解析接口或者用Selenium自动化测试工具来爬取数据,但是现在淘宝对接口进行了加密,使我们很难分析出来其中的规律,同时淘宝也对Selenium进行了反爬限制,所以我们要换种思路来进行数据获取。

打开开发者模式,开始对网页进行观察后发现,淘宝商品的数据竟然在源网页中存储着。

图片

我翻了几页网页之后发现,每翻一页,网页的params参数中的s参数就会增加44(初始值是0)。

图片

经过以上分析,现在我们就可以开始构造爬虫程序了。

01 导入爬虫使用的库

import requests
import re
import time
import random
import openpyxl

02 发起请求

for page in range(1,101):params = (('q', '棉袄'),('imgfile', ''),('commend', 'all'),('ssid', 's5-e'),('search_type', 'item'),('sourceId', 'tb.index'),('spm', 'a21bo.jianhua.201856-taobao-item.2'),('ie', 'utf8'),('initiative_id', 'tbindexz_20170306'),('hintq', '1'),('s', str(page*44)),)
response = requests.get(url,  params=params)

03 数据存储

   a = 0b = 0for i in range(44):try:sheet.append([dianpumingcheng[i],shangpinming[i],float(jiage[i]),fahuodi[i],fukuanrenshu[i]])except:a+=1if a>30:print(f"第{page}页数据未爬取......")wb.save('棉袄.xlsx')# 把xxx改成你想要的存储的名称即可b = 1breakif b == 1:breakprint(f"已爬取完第{page}页数据......")time.sleep(random.randint(3,5))
print(f'共爬取{page}页数据......')

 

02 数据清洗

数据采集后,要对其进行清洗,剔除脏数据,用以提高分析的准确性。

01 导入商品数据

用pandas读取爬取后的商品数据并预览。

import pandas as pd
df = pd.read_excel('棉袄.xlsx',names=['店铺名称','商品名','价格','产地','付款人数'])
print(df.head())

图片

02 删除重复数据

df.drop_duplicates()

删除重复数据后,还有2008条数据。

图片

03 数据类型转换

我们发现付款人数是字符串类型,我们需要将其转换成整数类型。

wb = openpyxl.load_workbook('棉袄.xlsx')
int_list = []
sheet = wb['Sheet']
for i in range(2,2008):str = sheet[f'E{i}'].valueif'万+'in str:int_list.append(int(int(str[:-2])*random.uniform(1,2)*10000))elif'+'in str:int_list.append(int(int(str[:-1])+random.random()*1000))else:int_list.append(int(str))
for i in range(2,2008):sheet.cell(i,5).value = int_list[i-2]
wb.save('3.xlsx')

04 查看数据类型

查看字段类型和缺失值情况,符合分析需要,无需另做处理。

df.info()

图片

03 可视化分析

我们来对这2008家棉袄商品数据进行可视化分析。可视化图是由Python、Tableau和Excel共同绘制而来。

01 在售棉袄特点

通过对棉袄的商品名称进行词云图绘制,我们发现,今年棉袄的样式以宽松、潮流、韩版、短款类居多。

图片

制作代码如下:

from imageio import imread
import jieba
from wordcloud import WordCloud, STOPWORDSwith open("1.txt",'r',encoding='utf-8') as f:job_title_1 = f.read()
contents_cut_job_title = jieba.cut(job_title_1)
contents_list_job_title = " ".join(contents_cut_job_title)
wc = WordCloud(stopwords=STOPWORDS.add("一个"), collocations=False,background_color="white",font_path=r"K:\msyh.ttc",width=400, height=300, random_state=42,mask=imread('棉袄.jpg', pilmode="RGB"))
wc.generate(contents_list_job_title)
wc.to_file("推荐语.png")

02 各省产量分布图

通过对各商品的产地数据进行统计并绘制了全国地图,我们发现浙江、广东和福建这三个地方生产棉袄最多,分别是914家、261家和203家。

图片

制作代码如下:

import openpyxl
from collections import Counter
from pyecharts import Map
wb = openpyxl.load_workbook('棉袄.xlsx')
sheet = wb['Sheet']
a = []
for i in range(2,1960):D = sheet[f'D{i}']a.append(D.value)
province_distribution = dict(Counter(a))
provice = list(province_distribution.keys())
values = list(province_distribution.values())
map = Map("中国地图",width=1200, height=600)
map.add("", provice, values, visual_range=[0, 50], maptype='china', is_visualmap=True,
visual_text_color='#000',is_label_show=True)
map.render(path="地图.html")

我们进一步对浙江省的产地数据进行分析发现,杭州的棉袄商家最多,占全省的40%。

图片

03 棉袄价格区间分布

我们对棉袄价格以100为分点,进行可视化后发现,价格在100-200的棉袄商品最多,有869家,其次是价格在201-300之间的,有501家。看来棉袄的价格还是相对便宜的~

图片

04 棉袄月销量top20商家

销量最高的竟然不是旗舰店,是一个李广森的自制时尚女装店,打开她们家的店铺看了看,感觉还不错,可以给对象入手一套~

图片

这篇关于淘宝商品数据爬取商品信息采集数据分析API接口详细步骤展示(含测试链接)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


原文地址:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.chinasem.cn/article/757982

相关文章

SpringBoot整合Apache Flink的详细指南

《SpringBoot整合ApacheFlink的详细指南》这篇文章主要为大家详细介绍了SpringBoot整合ApacheFlink的详细过程,涵盖环境准备,依赖配置,代码实现及运行步骤,感兴趣的... 目录1. 背景与目标2. 环境准备2.1 开发工具2.2 技术版本3. 创建 Spring Boot

SpringBoot3中使用虚拟线程的完整步骤

《SpringBoot3中使用虚拟线程的完整步骤》在SpringBoot3中使用Java21+的虚拟线程(VirtualThreads)可以显著提升I/O密集型应用的并发能力,这篇文章为大家介绍了详细... 目录1. 环境准备2. 配置虚拟线程方式一:全局启用虚拟线程(Tomcat/Jetty)方式二:异步

使用Python实现base64字符串与图片互转的详细步骤

《使用Python实现base64字符串与图片互转的详细步骤》要将一个Base64编码的字符串转换为图片文件并保存下来,可以使用Python的base64模块来实现,这一过程包括解码Base64字符串... 目录1. 图片编码为 Base64 字符串2. Base64 字符串解码为图片文件3. 示例使用注意

Linux使用scp进行远程目录文件复制的详细步骤和示例

《Linux使用scp进行远程目录文件复制的详细步骤和示例》在Linux系统中,scp(安全复制协议)是一个使用SSH(安全外壳协议)进行文件和目录安全传输的命令,它允许在远程主机之间复制文件和目录,... 目录1. 什么是scp?2. 语法3. 示例示例 1: 复制本地目录到远程主机示例 2: 复制远程主

Python FastMCP构建MCP服务端与客户端的详细步骤

《PythonFastMCP构建MCP服务端与客户端的详细步骤》MCP(Multi-ClientProtocol)是一种用于构建可扩展服务的通信协议框架,本文将使用FastMCP搭建一个支持St... 目录简介环境准备服务端实现(server.py)客户端实现(client.py)运行效果扩展方向常见问题结

Spring Boot 整合 Apache Flink 的详细过程

《SpringBoot整合ApacheFlink的详细过程》ApacheFlink是一个高性能的分布式流处理框架,而SpringBoot提供了快速构建企业级应用的能力,下面给大家介绍Spri... 目录Spring Boot 整合 Apache Flink 教程一、背景与目标二、环境准备三、创建项目 & 添

详解如何使用Python构建从数据到文档的自动化工作流

《详解如何使用Python构建从数据到文档的自动化工作流》这篇文章将通过真实工作场景拆解,为大家展示如何用Python构建自动化工作流,让工具代替人力完成这些数字苦力活,感兴趣的小伙伴可以跟随小编一起... 目录一、Excel处理:从数据搬运工到智能分析师二、PDF处理:文档工厂的智能生产线三、邮件自动化:

Java进程CPU使用率过高排查步骤详细讲解

《Java进程CPU使用率过高排查步骤详细讲解》:本文主要介绍Java进程CPU使用率过高排查的相关资料,针对Java进程CPU使用率高的问题,我们可以遵循以下步骤进行排查和优化,文中通过代码介绍... 目录前言一、初步定位问题1.1 确认进程状态1.2 确定Java进程ID1.3 快速生成线程堆栈二、分析

Java中的登录技术保姆级详细教程

《Java中的登录技术保姆级详细教程》:本文主要介绍Java中登录技术保姆级详细教程的相关资料,在Java中我们可以使用各种技术和框架来实现这些功能,文中通过代码介绍的非常详细,需要的朋友可以参考... 目录1.登录思路2.登录标记1.会话技术2.会话跟踪1.Cookie技术2.Session技术3.令牌技

Python数据分析与可视化的全面指南(从数据清洗到图表呈现)

《Python数据分析与可视化的全面指南(从数据清洗到图表呈现)》Python是数据分析与可视化领域中最受欢迎的编程语言之一,凭借其丰富的库和工具,Python能够帮助我们快速处理、分析数据并生成高质... 目录一、数据采集与初步探索二、数据清洗的七种武器1. 缺失值处理策略2. 异常值检测与修正3. 数据