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

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

为了给心爱的女盆友选一套surprise我 用python把网易优选小姐姐文胸看了个遍

 

这一切的的目的只是因为我爱女盆友&&爱学习~~~

需求分析

我们的目标是网易小姐姐2000+文胸评论。需要的数据是小姐姐称呼、产品星评、文胸颜色大小和评论时间等。

通过数据来分析小姐姐最喜欢的颜色和最合适的尺码是多少?


网页分析

网页F12打开浏览器开发者模式,搜索关键字找到网页

发送请求的真实链接如下:

数据是存储在一个json的数据集合里面的。

发送请求

如下找到浏览器请求连接,

然后添加headers模拟浏览器发送请求获取响应数据

  url = 'http://you.163.com/xhr/comment/listByItemByTag.json?__timestamp=1624856130970&itemId=3987228&tag=%E5%85%A8%E9%83%A8&size=20&page=1&orderBy=0&oldItemTag=%E5%85%A8%E9%83%A8&oldItemOrderBy=0&tagChanged=0'
 
  headers = {
      'Cookie': '_ntes_nnid=501cb75ada402fbcf47eefe12cccc23a,1623327742969; _ntes_nuid=501cb75ada402fbcf47eefe12cccc23a; UM_distinctid=17a3365a7592d2-008996d874143d-5c4f2f15-1fa400-17a3365a75a526; hb_MA-8E16-605C3AFFE11F_source=www.baidu.com; yx_aui=6da18d10-f072-41ac-912f-b14dff79cbb9; mail_psc_fingerprint=66f4d93f8163fe521a151b828d49e1cd; yx_s_device=32d4255-6232-2537-51c2-4e819468e8; yx_but_id=d03335c54b02488a8507463681ed337bca142a4f6d33ff62_v1_nl; yx_s_tid=tid_web_38d7721d61b649199f8af09017ae76b3_d0a48cb2b_1; yx_search_history=%5B%22%u6587%u80F8%22%5D; yx_from=search_sem_bdpc_25; yx_show_painted_egg_shell=false; yx_delete_cookie_flag=true; yx_stat_seesionId=6da18d10-f072-41ac-912f-b14dff79cbb91624855735580; yx_new_user_modal_show=1; yx_page_key_list=http%3A//you.163.com/search%3Fkeyword%3D%25E6%2596%2587%25E8%2583%25B8%26timestamp%3D1624845943619%26_stat_search%3Dhistory%26searchWordSource%3D5%23page%3D1%26sortType%3D0%26descSorted%3Dtrue%26categoryId%3D0%26matchType%3D0%2Chttp%3A//you.163.com/item/detail%3Fid%3D3987228%26_stat_area%3D3%26_stat_referer%3Dsearch%26_stat_query%3D%25E6%2596%2587%25E8%2583%25B8%26_stat_count%3D132%26_stat_searchversion%3Ddcn_model-1.1.0-1.3; yx_subscribe_showtime=1624856134666; yx_stat_seqList=v_ecb98e3f92%7Cv_377304616a%3B-1%3Bv_780ef75480%3Bc_350809ccfe%3Bv_cf5074d5c0%3B-1%3Bv_ecb98e3f92%3B-1',
      'Referer': 'http://you.163.com/item/detail?id=3987228&_stat_area=3&_stat_referer=search&_stat_query=%E6%96%87%E8%83%B8&_stat_count=132&_stat_searchversion=dcn_model-1.1.0-1.3',
      'User-Agent': str(UserAgent().random)
    }
 
  resp = requests.get(url, headers = headers)
 
  if resp.status_code == 200:
      print(resp.json())

可以看到,当前json该数据集已经成功获取到,接下来就是获取json内部的具体信息了

我们先来获取单页数据,并将其存于熊猫之中

熊猫详细文档:

让人无法拒绝的pandas技巧,简单却好用到爆!

 

   comts_List = resp.json()['data']['commentList']
 
    size = [item['skuInfo'][0] for item in comts_List]
    colors = [item['skuInfo'][1] for item in comts_List]
    prof_phot = [item['frontUserAvatar'] for item in comts_List]
    star = [item['star'] for item in comts_List]
    content = [item['content'] for item in comts_List]
 
    # 保存数据
    pd_data = pd.DataFrame({
        '型号': size,
        '颜色': colors,
        '小姐姐': prof_phot,
        '评分': star,
        '评论': content
    })

多页存储

单页数据存储完毕,先定个小目标,爬它100页。

  for page in range(100):
    # 打印进度
    print(f'-------------正在获取第{page + 1}页的文胸信息-------------')

然后将这100页,获取到了两千条数据。然后将其存储在Excel,

以便后续数据分析和可视化操作。

小姐姐头像

小姐姐头像的链接我们都在上一步扒拉下来了,难道我会放过这些小姐姐的美照吗?

    for img in pd_data['小姐姐']:
        if img != None:
            try:
                with open('./pictures/{}.jpg'.format(fake.name()), 'wb') as fin:
                    print(f'正在爬取第{count}张图片')
                    fin.write(requests.get(img).content)
                    print('{}.jpg----下载成功'.format(img))
            except:
                print('下载失败!')

图片成功下载完毕

老规矩,我先看哈

可视化操作

先来给评论做词云图

函数已经给你定义好了,数据直接导入即可~~

  pd_data = pd.read_excel('./小姐姐文胸.xlsx')
  c_title = pd_data['评论'].tolist()
  # 观影评论词云图
  wordlist = jieba.cut(''.join(c_title))
  result = ' '.join(wordlist)
  pic = 'img.jpg'
  gen_stylecloud(text=result,
                  icon_name='fab fa-qq',  #s
                  font_path='msyh.ttc',
                  background_color="black",
                  output_name=pic)
  print('绘图成功!')

型号分析

详情都在注释里~~~

  # 读取数据
  pd_data = pd.read_excel('./小姐姐文胸.xlsx')
  # 去除不需要数据
  pd_data.loc[:, '型号new'] = pd_data['型号'].str.replace('尺码:', '')
 
  size = pd_data['型号new'].value_counts()
 
  # 型号分类
  size1 = size.index.tolist()
  # 分类数据统计
  size2 = size.tolist()
    
    '''
  ['75B', '85B', '80B', '75A', '80A', '70C', '80C', '70A', '75C']
  [500, 400, 300, 200, 200, 100, 100, 100, 100]
    '''

75B有多大?没人问啊也不敢问啊

颜色分析

  # 读取数据
  pd_data = pd.read_excel('./小姐姐文胸.xlsx')
  # 去除不需要数据
  pd_data.loc[:, '颜色new'] = pd_data['颜色'].str.replace('颜色:', '')
 
  color = pd_data['颜色new'].value_counts()
 
  # 型号分类
  color1 = color.index.tolist()
  # 分类数据统计
  color2 = color.tolist()

LSP都喜欢的粉色,可是人家小姐姐喜欢的是成熟的灰色

好了,今天文章到此结束。

祝大家七夕快乐!

相关文章
|
1月前
|
机器学习/深度学习 TensorFlow 算法框架/工具
使用Python实现深度学习模型:智能数据隐私保护
使用Python实现深度学习模型:智能数据隐私保护 【10月更文挑战第3天】
102 0
|
27天前
|
数据采集 JSON 数据处理
抓取和分析JSON数据:使用Python构建数据处理管道
在大数据时代,电商网站如亚马逊、京东等成为数据采集的重要来源。本文介绍如何使用Python结合代理IP、多线程等技术,高效、隐秘地抓取并处理电商网站的JSON数据。通过爬虫代理服务,模拟真实用户行为,提升抓取效率和稳定性。示例代码展示了如何抓取亚马逊商品信息并进行解析。
抓取和分析JSON数据:使用Python构建数据处理管道
|
12天前
|
图形学 Python
SciPy 空间数据2
凸包(Convex Hull)是计算几何中的概念,指包含给定点集的所有凸集的交集。可以通过 `ConvexHull()` 方法创建凸包。示例代码展示了如何使用 `scipy` 库和 `matplotlib` 绘制给定点集的凸包。
21 1
|
13天前
|
JSON 数据格式 索引
Python中序列化/反序列化JSON格式的数据
【11月更文挑战第4天】本文介绍了 Python 中使用 `json` 模块进行序列化和反序列化的操作。序列化是指将 Python 对象(如字典、列表)转换为 JSON 字符串,主要使用 `json.dumps` 方法。示例包括基本的字典和列表序列化,以及自定义类的序列化。反序列化则是将 JSON 字符串转换回 Python 对象,使用 `json.loads` 方法。文中还提供了具体的代码示例,展示了如何处理不同类型的 Python 对象。
|
13天前
|
数据采集 Web App开发 iOS开发
如何使用 Python 语言的正则表达式进行网页数据的爬取?
使用 Python 进行网页数据爬取的步骤包括:1. 安装必要库(requests、re、bs4);2. 发送 HTTP 请求获取网页内容;3. 使用正则表达式提取数据;4. 数据清洗和处理;5. 循环遍历多个页面。通过这些步骤,可以高效地从网页中提取所需信息。
|
1月前
|
数据处理 Python
Python实用记录(十):获取excel数据并通过列表的形式保存为txt文档、xlsx文档、csv文档
这篇文章介绍了如何使用Python读取Excel文件中的数据,处理后将其保存为txt、xlsx和csv格式的文件。
49 3
Python实用记录(十):获取excel数据并通过列表的形式保存为txt文档、xlsx文档、csv文档
|
1月前
|
计算机视觉 Python
Python实用记录(九):将不同的图绘制在一起、将不同txt文档中的数据绘制多条折线图
这篇文章介绍了如何使用Python的OpenCV库将多张图片合并为一张图片显示,以及如何使用matplotlib库从不同txt文档中读取数据并绘制多条折线图。
42 3
Python实用记录(九):将不同的图绘制在一起、将不同txt文档中的数据绘制多条折线图
|
1月前
|
数据可视化 算法 Python
基于OpenFOAM和Python的流场动态模态分解:从数据提取到POD-DMD分析
本文介绍了如何利用Python脚本结合动态模态分解(DMD)技术,分析从OpenFOAM模拟中提取的二维切片数据,以深入理解流体动力学现象。通过PyVista库处理VTK格式的模拟数据,进行POD和DMD分析,揭示流场中的主要能量结构及动态特征。此方法为研究复杂流动系统提供了有力工具。
70 2
基于OpenFOAM和Python的流场动态模态分解:从数据提取到POD-DMD分析
|
25天前
|
数据可视化 算法 JavaScript
基于图论的时间序列数据平稳性与连通性分析:利用图形、数学和 Python 揭示时间序列数据中的隐藏模式
本文探讨了如何利用图论分析时间序列数据的平稳性和连通性。通过将时间序列数据转换为图结构,计算片段间的相似性,并构建连通图,可以揭示数据中的隐藏模式。文章介绍了平稳性的概念,提出了基于图的平稳性度量,并展示了图分区在可视化平稳性中的应用。此外,还模拟了不同平稳性和非平稳性程度的信号,分析了图度量的变化,为时间序列数据分析提供了新视角。
53 0
基于图论的时间序列数据平稳性与连通性分析:利用图形、数学和 Python 揭示时间序列数据中的隐藏模式
|
1月前
|
自然语言处理 算法 数据挖掘
探讨如何利用Python中的NLP工具,从被动收集到主动分析文本数据的过程
【10月更文挑战第11天】本文介绍了自然语言处理(NLP)在文本分析中的应用,从被动收集到主动分析的过程。通过Python代码示例,详细展示了文本预处理、特征提取、情感分析和主题建模等关键技术,帮助读者理解如何有效利用NLP工具进行文本数据分析。
47 2