前言

本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理。

以下文章来源于Python技术 ,作者派森酱

爬取数据

首先,我们在网易严选的搜索框输入关键词“男士内裤”,页面搜索出来男士内裤的产品列表界面:

搜索结果

我们点开第一个商品,点击“评论”,就可以看到如下信息:

评论信息

PS:如有需要Python学习资料的小伙伴可以加下方的群去找免费管理员领取.

可以免费领取项目实战视频

我们分析请求列表,就可以很容易地发现评论数据是通过 https://you.163.com/xhr/comment/listByItemByTag.json 这个请求来获取的。然后我们过滤请求参数,去掉不是必传的参数,最终发现 itemId 和 page 两个参数是必须的。

itemId 是指商品的ID,page 就是指的请求的页码,默认每页记录数是40。所以我们要获取评论数据的前提是获取到对应的商品ID。

我们是从搜索页面点击产品进入商品详情页的,所以搜索页面的商品列表里面肯定存在每一个商品的商品ID,我们回到搜索产品列表页,寻找搜索商品的请求:

商品列表

同样的,我们在搜索界面的请求分析中,找到了 http://you.163.com/xhr/search/search.json 这个请求,逐个分析请求参数后发现,我们只需要 keyword 和 page 两个参数即可。

请求分析完成后,我们就可以来码代码了。代码如下:

# 获取商品列表
def search_keyword(keyword):uri = 'https://you.163.com/xhr/search/search.json'query = {"keyword": keyword,"page": 1}try:res = requests.get(uri, params=query).json()result = res['data']['directly']['searcherResult']['result']product_id = []for r in result:product_id.append(r['id'])return product_idexcept:raise# 获取评论
def details(product_id):url = 'https://you.163.com/xhr/comment/listByItemByTag.json'try:C_list = []for i in range(1, 100):query = {"itemId": product_id,"page": i,}res = requests.get(url, params=query).json()if not res['data']['commentList']:breakprint("爬取第 %s 页评论" % i)commentList = res['data']['commentList']C_list.extend(commentList)time.sleep(1)return C_listexcept:raiseproduct_id = search_keyword('男士内裤')
r_list = []
for p in product_id:r_list.extend(details(p))with open('./briefs.txt', 'w') as f:for r in r_list:try:f.write(json.dumps(r, ensure_ascii=False) + '\n')except:print('出错啦')

为了简单起见,我抓取了首页的40件商品的评论数,将结果保存在 briefs.txt 文件中。文件数据的预览如下:

存储数据

分析数据

抓取完数据后,我们就可以进入探索环节了,我想从颜色、尺码、评论三个角度分析数据,看看男士们内裤的一些“特点”。

我们来看看数据结构的特点:

{"skuInfo": ["颜色:黑色","尺码:M"],"frontUserName": "S****、","frontUserAvatar": "https://yanxuan.nosdn.127.net/0da37937c896cac1955bda8522d5754f.jpg","content": "非常好","createTime": 1592965119969,"picList": [],"commentReplyVO": null,"memberLevel": 5,"appendCommentVO": null,"star": 5,"itemId": 3544005
}

仔细观察这条评论数据,我们可以看到颜色和尺码都放在 skuInfo 这个数组里面,评论是放在 content 字段里面。同时,我们多翻一些数据就可以发现,颜色有好几种格式:

  • 单条装的颜色,例如:颜色:浅麻灰
  • 多条装的颜色,例如:颜色:(黑色+麻灰+浅麻灰)3条
  • 自选多条的颜色,例如:颜色:黑色+藏青色
  • 其他,例如:规格:5条装

这里,最后一种无法分辨出颜色,我准备过滤掉。其他几种,去除掉干扰,通过“+”就可以拆分出颜色来。

而尺码数据格式是统一的,可以直接获取。

我将颜色和尺码都做成柱状图来展示,而评论就用词云来展示。最终的效果图如下:

颜色分布

颜色并没有出乎我的意料,黑色遥遥领先,不过,如果把几种灰色加起来的话,可能超过了黑色。总之,黑色和灰色是大众的选择。

尺寸分布

尺寸嘛,前三名是XL、L和XXL,不过XL和L相差不大。

爬取网易严选某种衣服商品数据,实现可视化,结论有点吓人相关推荐

  1. 【Scrapy框架实战】爬取网易严选-苹果12手机热评

    Scrapy爬取网易严选-苹果手机热评 1. 前言 2. Scrapy项目创建 3. 网页分析 4. 发送请求 5. 提取信息 6. 模拟翻页 7. 数据保存 8. 结果展示 9. 数据分析 1. 前 ...

  2. 我在深夜爬取了严选的女性文胸数据,发现了一个大秘密...

    点击上方蓝色小字,关注"涛哥聊Python" 重磅干货,第一时间送达 来源:Python 技术「ID: pythonall」 刚刚过去的七夕,相信大家看到最多的是朋友圈秀恩爱(晒花 ...

  3. 这个横行霸道的美食,也是中秋节的一大特色,我用Python爬取京东1546条大闸蟹商品数据带大家看看

    大家好,我是才哥. 中秋节除了月饼之外,还有一道美食也开始闯入人们的餐桌,这边是横行"霸道"的大闸蟹! 那么,大闸蟹又有哪些特点,都有哪些大闸蟹品牌值得关注呢? 今天,就跟随着本文 ...

  4. python抓取交易所_python爬取上海石油天然气交易中心液化天然气交易数据并可视化分析...

    由于之前从事过石化行业,上海石油天然气交易中心成立虽较晚(2015年成立),但一直有关注,去年下半年由于大量供暖采取煤改气,还一个没有霾笼罩的冬天,因此出现了天然气大幅涨价供不应求的状况,闲着没事就用 ...

  5. Python Selenium + PhantomJS爬取考拉海购商品数据

    爬完QQ音乐以后打算爬网易云音乐的,中间出了一点小状况,就改爬考拉海购了(什么状况你猜呀❛˓◞˂̶✧以后会爬完网易云音乐的!) 今天写近段时间的最后一篇,写完这篇就要开始期末复习了,寒假再来更新 进入 ...

  6. 爬取网易,搜狐,凤凰和澎湃网站评论数据,正负面情感分析

    向AI转型的程序员都关注了这个号???????????? 机器学习AI算法工程   公众号:datayx Scrapy爬虫项目 基于Scrapy框架的Python新闻爬虫,能够爬取网易,搜狐,凤凰和澎 ...

  7. python爬取股票信息_利用Python爬取网易上证所有股票数据(代码

    利用Python爬取网易上证所有股票数据(代码 发布时间:2018-04-14 17:30, 浏览次数:1261 , 标签: Python import urllib.request import r ...

  8. 爬取网易财经中股票的历史交易数据

    爬取网易财经中股票的历史交易数据 需求分析 得到股票代码 股票代码的信息是在东方财富网中获取(http://quote.eastmoney.com/stocklist.html) 得到股票的历史交易记 ...

  9. 爬取网易buff CSGO饰品数据 - 优化篇

    文章目录 思路回顾 配置优化 RawConfigParser 处理配置列表 价格取舍 价格过滤 饰品类别限定 内部实现优化:结合价格筛选和饰品类别筛选 其他限定? 命名 The End 继上周末搞了c ...

  10. 为了给七夕的女盆友挑合适的内衣,我用Python爬了网易严选的内衣店的数据!

    为了给心爱的女盆友选一套surprise我 用python把网易优选小姐姐文胸看了个遍 这一切的的目的只是因为我爱女盆友&&爱学习~~~ 需求分析 我们的目标是爬取网易小姐姐2000+ ...

最新文章

  1. 深度学习 CNN trick 合集
  2. C和指针:第十三,十四章
  3. Golang 垃圾回收剖析
  4. 解决Mac无法编辑 .bash_profile文件与使用sudo时permission denied报错
  5. SharePoint 解决管理员密码修改后的问题
  6. 菜鸟新手们得福音纯css菜单导航
  7. uoj#267. 【清华集训2016】魔法小程序(乱搞)
  8. windbg+vm双机调试 waiting to reconnect 无法连接问题,解决办法
  9. 蜡笔小新模拟器汉化版_FC蜡笔小新条码版下载-蜡笔小新条码版FC模拟器下载-电玩咖...
  10. 《分布式服务架构》读后感
  11. 电脑怎么隐藏文件夹?6个步骤完成!
  12. chnsenticorp数据集及其处理
  13. python prettytable输出对齐_漂亮的输出-----prettytable和colorama的使用
  14. javafx 教程_Java验证(javafx)
  15. win10 无法安全地连接到此页面 TLS安全设置未设置为默认 该怎么办? 无法访问此页面
  16. java推送叮叮消息,叮叮叮!请及时签收入门学习Java导航路线
  17. 基础为零?如何将 C++ 编译成 WebAssembly
  18. 检查IP或端口是否被封
  19. 2022初级会计实务教材读书笔记
  20. 618微信小程序电商销售数据出炉(附完整报告)

热门文章

  1. Animation.css动画效果属性
  2. 12c 新特性-统一审计(Unified Auditing)
  3. android图片上传大小限制,Android解决图片上传过大问题
  4. 39个让你受益的HTML5教程
  5. Redis--集群-Cluster-真正的/终极版的集群
  6. PowerVR SDK记录
  7. IDEA中好用的功能(不断更新中)
  8. 【flask高级】结合源码解决flask经典报错:Working outside of application context
  9. c语言切蛋糕问题程序设计报告,c语言切蛋糕问题,问题如图。望大神指教。
  10. 【Java学习】Clone 分析