快来pick你喜欢的小姐姐吧,Python爬取青春有你2和创造营2024小姐姐数据(2)

face++女性眼中颜值 姓名 来源 身高 体重 生日 出生地

95 95.23 黄若元 创造营2020 NaN NaN 1996-03-01 NaN

在这里插入图片描述

男性视角颜值第一名

得分93.773,来自《创造营2020》的孙珍妮(目前位列撑腰榜第19)

df.sort_values(by = ‘face++男性眼中颜值’,ascending = False).head(1)[[‘face++男性眼中颜值’,‘姓名’,‘来源’,‘身高’,‘体重’,‘生日’,‘出生地’]]

face++男性眼中颜值 姓名 来源 身高 体重 生日 出生地

18 93.773 孙珍妮 创造营2020 165.0 NaN 2000-05-05 上海

在这里插入图片描述

④小姐姐们籍贯分布(pyecharts作图)

创造营小姐姐都来自哪里呀?

创造营2020的小姐姐有籍贯记录的41位中,来自四川的有7位,江西、浙江、湖南和湖北的各3位

在这里插入图片描述

青春有你小姐姐都来自哪里呀?

青春有你2小姐姐来自最多的省市分别是北京、台湾 各9名,重庆、成都各6名

在这里插入图片描述

再看下统计分析结果吧

以下是整体数据部分截图(Spyder变量查看器)

在这里插入图片描述

因为整合的信息较多,共17个字段,我们在做分 数据指标 统分的时候只需要用到部分即可。

在做统计分析时,这里核心就是一个 分组统计 (df.groupby()

在这里插入图片描述

小姐姐出生地分布

《创造营2020》小姐姐官方信息数据中,出生地只有41/101个,且多以省为标尺,我们统计结果如下:

pro = df1.groupby(‘出生地’)[‘编号’].count().to_frame(‘count’).sort_values(by = ‘count’,ascending = False).reset_index()

pro.head()

出生地 count

0 四川 7

1 江西 3

2 浙江 3

3 湖南 3

4 湖北 3

《青春有你2》小姐姐官方数据比较全,出生地有108/109,且多以市为标尺,我们统计结果如下:

city = df2.groupby(‘出生地’)[‘编号’].count().to_frame(‘count’).sort_values(by = ‘count’,ascending = False).reset_index()

city.head()

出生地 count

0 北京 9

1 台湾 9

2 重庆 6

3 成都 6

4 上海 5

小姐姐的出生年份分布

出生年份我们合并数据做统一处理吧,一共有160/210份数据,我们统计结果如下:

year = df.groupby(‘year’)[‘编号’].count().to_frame(‘count’).sort_values(by = ‘count’,ascending = False).reset_index()

year.head()

year count

0 1997.0 27

1 1995.0 25

2 1996.0 24

3 1998.0 20

4 1999.0 19

小姐姐星座分布

星座分布我们合并数据做统一处理吧,一共有168/210份数据,我们统计结果如下:

conste = df.groupby(‘星座’)[‘编号’].count().to_frame(‘count’).sort_values(by = ‘count’,ascending = False).reset_index()

conste

星座 count

0 狮子座 23

1 天秤座 19

2 摩羯座 19

3 白羊座 16

4 双子座 14

5 射手座 13

6 金牛座 13

7 双鱼座 11

8 天蝎座 11

9 巨蟹座 11

10 水瓶座 10

11 处女座 8

小姐姐身高分布

身高分布我们合并数据做统一处理吧,一共有137/210份数据,我们统计结果如下:

height = df.groupby(‘身高’)[‘编号’].count().to_frame(‘count’).sort_values(by = ‘count’,ascending = False).reset_index()

height

身高 count

0 168.0 27

1 170.0 11

2 165.0 11

3 166.0 11

4 163.0 10

5 167.0 9

身高这种属性,咱们还可以做简单的描述统计分析如下:

(可以看到,最高175cm,最低158cm,平均167.12cm,中位数168cm)

在这里插入图片描述

载入需要的库


在这里插入图片描述

使用requests+json获取小姐姐列表

《创造营2020》撑腰榜地址:

https://m.v.qq.com/activity/h5/303_index/index.html?ovscroll=0&autoplay=1&actityId=107015

通过F12在开发者界面Network—>XHR中我们可以发现真实数据请求地址(见Headers里的General),以及请求响应的数据格式 是 json。

在这里插入图片描述

真实数据请求地址:

https://zbaccess.video.qq.com/fcgi/getVoteActityRankList?(你应该点不开,因为请求的时候需要附带一些参数)

参数可以在Headers里的Query String Parameters 里找到于是我们可以编写以下代码进行数据爬取

1def get_Girllist():

2 url = ‘https://zbaccess.video.qq.com/fcgi/getVoteActityRankList?’

3 headers = {“User-Agent”: UserAgent(verify_ssl=False).random}

4 params = {‘raw’: 1,

5 ‘vappid’: 51902973,

6 ‘vsecret’: ‘14816bd3d3bb7c03d6fd123b47541a77d0c7ff859fb85f21’,

7 ‘actityId’: 107015,

8 ‘pageSize’: 101,

9 ‘vplatform’: 3,

10 ‘listFlag’: 0,

11 ‘pageContext’:‘’ ,

12 ‘ver’: 1,

13 #以下两个时间戳参数可以省略

14 ‘_t’: 1590324974706,

15 ‘_’: 1590324974708

16 }

17 #请求数据

18 re = requests.get(url,headers = headers,params = params)

19 #用json解析json数据成字典

20 data = json.loads(re.text)

21

22 Li_list = data[‘data’][‘itemList’]

23

24 rank = 0

25 data_list = []

26

27 #获取每个选手的基础信息

28 for li in Li_list:

29 rank += 1

30 item = {}

31 #获取基础信息

32 item[‘当前排名’] = rank

33 item[‘选手编号’] = li[‘itemInfo’][‘id’]

34 item[‘选手姓名’] = li[‘itemInfo’][‘name’]

35 item[‘选手照片’] = li[‘itemInfo’][‘mapData’][‘poster_pic’]

36 item[‘选手状态’] = li[‘statusInfo’][‘voteBtnTxt’]

37

38 #获取选手doki页,需要传递选手编号id信息用于循环请求

39 #根据选手编号id到选手doki页面获取粉丝数、星座、身高、生日等基础个人信息

40 #简单的静态页面,这里用到xpath做解析

41 id_ = item[‘选手编号’]

42 #调用获取选手doki页数据的函数,具体见get_Girlinfo函数

43 html = get_Girlinfo(id_)

44 item[‘粉丝数’] = html.xpath(‘.//div[@class=“followers_count”]/text()’)[0]

45 info = html.xpath(‘.//div[@class=“wiki_info_1”]//span[@class=“content”]/text()’)

46 item[‘星座’] = info[-5]

47 item[‘身高’] = info[-3]

48 item[‘体重’] = info[-2]

49 item[‘出生地’] = info[-1]

50 info2 = html.xpath(‘.//div[@class=“wiki_info_2”]//span[@class=“content”]/text()’)

51 item[‘生日’] = info2[0]

52

53 url_ai = item[‘选手照片’]

54 #获取腾讯云AI颜值评分

55 age,beauty = txfaceScore(url_ai)

56 item[‘AI预测年龄’] = age

57 item[‘AI颜值评分’] = beauty

58 #获取face++颜值评分

59 faceage,beauty_w,beauty_m = ksfaceScore(url_ai)

60 item[‘face++AI预测年龄’] = faceage

61 item[‘face++女性眼中颜值’] = beauty_w

62 item[‘face++男性眼中颜值’] = beauty_m

63 data_list.append(item)

64

65 return data_list

使用requests+xpath获取小姐姐基础信息

《创造营2020》选手详情页地址:https://v.qq.com/x/star/8262415?tabid=2

以上这个地址是刘些宁同学的个人资料页百科info,我们可以看到这个网页动态变化的是8262415,这个数字是个啥?不难发现,这是选手编号id呀,我们在获取小姐姐列表的时候已经记录了。基于此,我们可以创建获取小姐姐百科info的函数如下:

在这里插入图片描述

使用requests调用api接口获取小姐姐颜值评分

一开始我用的是腾讯云的人脸识别,跑完数据发现101个创造营小姐姐里有21个颜值得了满分,而我喜欢的一个小姐姐朱主爱居然得分最低,那怎么行。所以,本次我们新增了旷视的FACE++人脸识别做颜值评分对比。

腾讯云人脸识别


腾讯云人脸识别需要使用到第三方库tencentcloud-sdk-python

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Python工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Python开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

img

img

img

img

img

img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以扫码获取!!!(备注:Python)

.(img-TiLttWX2-1713784889559)]

[外链图片转存中…(img-b2lzRPqc-1713784889560)]

[外链图片转存中…(img-qdhdFoHa-1713784889560)]

img

img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以扫码获取!!!(备注:Python)

  • 4
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值