[Python实战]采集电商平台商品数据进行可视化分析

前言

嗨喽~大家好呀,这里是小曼呐 ❤ ~!
在这里插入图片描述

环境使用:

模块使用:

第三方模块 需要安装

  • requests —> 发送 HTTP请求

内置模块 不需要安装

  • csv —> 数据处理中经常会用到的一种文件格式

第三方模块安装:

win + R 输入cmd 输入安装命令 pip install 模块名 (如果你觉得安装速度比较慢, 你可以切换国内镜像源)

基本流程思路:

一. 数据来源分析

1.明确需求

  • 明确采集网站以及数据
    数据: 商品信息

2.抓包分析 --> 通过浏览器自带工具: 开发者工具

  • 打开开发者工具: F12 / 右键点击检查选择network

  • 刷新网页: 让网页数据重新加载一遍

  • 搜索关键字: 搜索数据在哪里

找到数据包: 50条商品数据信息
整页数据内容: 120条 --> 分成三个数据包

  1. 前50条数据 --> 前50个商品ID
  2. 中50条数据 --> 中50个商品ID
  3. 后20条数据 --> 后20个商品ID

已知: 数据分为三组 --> 对比三组数据包请求参数变化规律

请求参数变化规律: 商品ID

分析找一下 是否存在一个数据包, 包含所有商品ID

如果想要获取商品信息 --> 先获取所有商品ID --> ID存在数据包

二. 代码实现步骤: 发送请求 -> 获取数据 -> 解析数据 -> 保存数据

第一次请求 --> 获取商品ID
1.发送请求, 模拟浏览器对于url地址发送请求

请求链接: 商品ID数据

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

开发者工具: response

3.解析数据, 提取我们想要的数据内容

商品ID

第二次请求 --> 获取商品信息

4.发送请求, 模拟浏览器对于url地址发送请求

请求链接: 商品信息数据包

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

开发者工具: response

6.解析数据, 提取我们想要的数据内容

商品信息

7.保存数据, 把信息保存本地文件 csv表格

8.多页数据采集

代码展示

获取数据

# 导入数据请求模块
import requests
# 导入格式化输出模块
from pprint import pprint
# 导入csv
import csv

# 模拟浏览器 -> 请求头 headers <字典>
headers = {
   
    # 防盗链 告诉服务器请求链接地址从哪里跳转过来
    'Referer': '*****/',
    # 用户代理, 表示浏览器基本身份信息
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko)'
}
# 请求链接
# 源码、解答、教程、安装包等资料加V:python10080免费领
url = 'https://m*****/vips-mobile/rest/shopping/pc/search/product/rank'
# 请求参数 <字典>
data = {
   
    # 回调函数
    # 'callback': 'getMerchandiseIds',
    'app_name': 'shop_pc',
    'app_version': '4.0',
    'warehouse': 'VIP_HZ',
    'fdc_area_id': '104103101',
    'client': 'pc',
    'mobile_platform': '1',
    'province_id': '104103',
    'api_key': '70f71280d5d547b2a7bb370a529aeea1',
    'user_id': '',
    'mars_cid': '1689245318776_e2b4a7b51f99b3dd6a4e6d356e364148',
    'wap_consumer': 'a',
    'standby_id': 'nature',
    'keyword': '泳衣',
    'lv3CatIds': '',
    'lv2CatIds': '',
    'lv1CatIds': '',
    'brandStoreSns': '',
    'props': '',
    'priceMin'
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值