파 이 썬 파충류 의 기어 오 르 기 2020 걸 그룹 오디 션 데이터

첫째,결 과 를 먼저 본다.
1.1 창조 영 2020 지지 랭 킹 3 위
창 영 2020 후원 순위 1∼3 위 는 히 린 나 이·고,진 탁 현,정 내 형 이 차지 했다.

>>>df1[df1['  ']<=3 ][['  ','  ','  ','  ','  ','   ']]
                                            
0  1.0      ・     NaN   NaN  1998 07 31     
1  2.0          168.0  42.0  1997 08 13     
2  3.0            NaN   NaN  1997 06 25     
撑腰榜前三甲
1.2 청춘 은 당신 이 있 습 니 다.
청춘 은 당신 2 공식 랭 킹(35 진 20)3 위 는 유우 신,우서 신,비유 가 있 습 니 다.

>>>df2[df2['  ']<=3 ][['  ','  ','  ','  ','  ','   ']]
                                           
107  1.0       168.0  48.0  1997 04 20     
117  2.0       169.0  50.0  1995 12 18     
118  3.0       172.0  50.0  1997 05 26     
青春有你2当前官方前三甲
1.3 페 이 스+남녀 시각 비 주 얼 최고
1.3.1 여성 비 주 얼 1 위
득점 95.23,'창조 영 2020'황 약 원(이미 무 대 를 떠 났 다)

>>>df.sort_values(by = 'face++      ',ascending = False).head(1)[['face++      ','  ','  ','  ','  ','  ','   ']]
    face++                                            
95         95.23          2020 NaN NaN 1996-03-01  NaN
face++女性视角评分第一
1.3.2 남성 비 주 얼 1 위
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    
Face++男性视角评分第一
1.4 아가씨 언니 들 의 본관 분포(pyecharts 작도)
창 영 2020 의 작은 누 나 는 본관 기록 이 있 는 41 명 중 쓰 촨 에서 온 사람 은 7 명 이 고 강서,절강,호 남 과 호 북 에서 각각 3 명 이다.
小姐姐省市分布
청춘 은 당신 의 2 작은 누나 가 가장 많이 온 성,시 는 각각 베 이 징,대만 각 9 명,충 칭,청 두 각 6 명 입 니 다.
小姐姐城市分布
2.통계 분석 을 다시 봅 시다.
다음은 전체 데이터 부분 캡 처(Spyder 변수 뷰 어)
小姐姐详情数据
통 합 된 정보 가 비교적 많 기 때문에 모두 17 개의 필드 가 있 기 때문에 우 리 는 데이터 지 표를 통일 적 으로 나 눌 때 부분 만 사용 하면 된다.
통계 분석 을 할 때 이 핵심 은 그룹 통계(df.groupby()이다.

>>>df.info()
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 210 entries, 0 to 209
Data columns (total 17 columns):
 #   Column        Non-Null Count  Dtype  
---  ------        --------------  -----  
 0                 136 non-null    float64
 1                 210 non-null    int64  
 2                 210 non-null    object 
 3                 210 non-null    object 
 4                 210 non-null    object 
 5                 101 non-null    object 
 6                 168 non-null    object 
 7                 137 non-null    float64
 8                 120 non-null    float64
 9                 149 non-null    object 
 10                160 non-null    object 
 11  AI            210 non-null    int64  
 12  AI            210 non-null    int64  
 13  face++AI      210 non-null    int64  
 14  face++        210 non-null    float64
 15  face++        210 non-null    float64
 16                210 non-null    object 
dtypes: float64(5), int64(4), object(8)
memory usage: 28.0+ KB
2.1 작은 누나 출생지 분포
'창조 영 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
어린 언니 의 공식 데 이 터 는 비교적 완전 하 다.출생 지 는 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
2.2 작은 누나 의 출생 연도 분포
출생 연도 에 우리 가 데 이 터 를 합 쳐 통일 적 으로 처리 합 시다.모두 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
2.3 작은 누나 별자리 분포
별자리 분 포 는 우리 가 데 이 터 를 합 쳐 통일 적 으로 처리 합 시다.모두 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
2.4 작은 언니 의 키 분포
신장 분 포 는 우리 가 데 이 터 를 합 쳐 통일 적 으로 처리 합 시다.모두 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
키 라 는 속성 에 대해 우 리 는 간단 한 설명 통 계 를 다음 과 같이 분석 할 수 있다.
(최고 175 cm,최저 158 cm,평균 167.12cm,중위 168 cm)

>>>df['  '].describe()
count    137.000000
mean     167.124088
std        4.080883
min      158.000000
25%      165.000000
50%      168.000000
75%      170.000000
max      175.000000
Name:   , dtype: float64
2.5 작은 누나 의 체중 분포
체중 분 포 는 우리 가 데 이 터 를 합 쳐 통일 적 으로 처리 합 시다.모두 120/210 개의 데이터 가 있 습 니 다.우리 의 통계 결 과 는 다음 과 같 습 니 다.

>>>weight = df.groupby('  ')['  '].count().to_frame('count').sort_values(by = 'count',ascending = False).reset_index()
>>>weight.head() 
         count
0  48.0     20
1  46.0     15
2  50.0     13
3  47.0     13
4  49.0     12
키 라 는 속성 에 대해 우 리 는 간단 한 설명 통 계 를 다음 과 같이 분석 할 수 있다.
(보 여요.최고 87kg???,최소 40kg,평균 48kg,중위 48kg)

>>>df['  '].describe()
count    120.000000
mean      48.012500
std        5.081877
min       40.000000
25%       46.000000
50%       48.000000
75%       50.000000
max       87.000000
Name:   , dtype: float64
이 87KG 의 여동생 이 누구 인지 빨리 알 아 보 세 요.사진 을 보 니 홈 페이지 데이터 가 잘못 쓴 것 같 습 니 다.47kg 이나 87 근 이 어야 합 니까?그래,됐어,안 고 쳐~

>>>df[df['  ']==87][['  ','  ','  ']] 
                          
170  540476547           2
87KG小姐姐
2.6 작은 언니 의 얼굴 분포
텐 센트 운 ai 가 점 수 를 매 겼 기 때문에 백 이 넘 으 면 40 개가 넘 습 니 다.우 리 는 페 이 스++를 사용 합 시다.
비 주 얼 평 점 은 소수점 아래 세 자리 까지 정확 하기 때문에 우 리 는 통 점 을 할 때 먼저 박스 조작 을 하 는 것 이 더욱 적합 하 다.
2.6.1 여성 각도 얼굴 평가
먼저 통계 분석 결 과 를 설명 한다.
(최고 95.23,최저 65.596,평균 83.742,중위 84.837)

>>>df['face++      '].describe() 
count    210.000000
mean      83.742038
std        5.340208
min       65.596000
25%       81.028000
50%       84.837500
75%       87.449750
max       95.230000
Name: face++      , dtype: float64
비 주 얼 은 60-100 으로 10 분 마다 한 단계 씩 나 뉘 는데 저희 가 집계 한 결 과 는 다음 과 같 습 니 다.
90 점 이상 이 었 는데 16 위 에 요.

>>>beauty_bins = [60,70,80,90,100] 
>>>beauty_labels = ['60-70', '70-80', '80-90', '90-100']
>>>df['face++ -    '] = pd.cut(df['face++      '], bins=beauty_bins, labels=beauty_labels)
>>>df['face++ -    '].value_counts() 
80-90     155
70-80      34
90-100     16
60-70       5
Name: face++ -    , dtype: int64
2.6.2 남성 각도 얼굴 평가
먼저 통계 분석 결 과 를 설명 한다.
(최고 93.77,최저 66.404,평균 82.606,중위 83.482)

>>>df['face++      '].describe() 
count    210.000000
mean      82.605929
std        5.055116
min       66.404000
25%       79.699250
50%       83.482500
75%       86.409000
max       93.773000
Name: face++      , dtype: float64
비 주 얼 은 60-100 으로 10 분 마다 한 단계 씩 나 뉘 는데 저희 가 집계 한 결 과 는 다음 과 같 습 니 다.
90 점 이상 비 주 얼 이 6 명 밖 에 없다 니~[설마 남자 들 이 비 주 얼 에 대한 요구 가 더 높 은 건 아니 겠 지???]

>>>df['face++ -    '].value_counts() 
80-90     147
70-80      52
90-100      6
60-70       5
Name: face++ -    , dtype: int64
3.필요 한 라 이브 러 리 불 러 오기

import requests
from fake_useragent import UserAgent
import pandas as pd
import json
from lxml import etree
3.1 requests+json 을 사용 하여 작은 언니 목록 가 져 오기
F12 를 통 해 개발 자 인터페이스 Network->XHR 에서 실제 데이터 요청 주소(Headers 의 Genel 참조)와 응답 을 요청 하 는 데이터 형식 은 json 임 을 알 수 있 습 니 다.
F12开发者模式查看源地址
인 자 는 Headers 의 Query String Parameters 에서 찾 을 수 있 습 니 다.
그래서 우 리 는 다음 코드 를 작성 하여 데 이 터 를 추출 할 수 있다.

def get_Girllist():    
    url = 'https://zbaccess.video.qq.com/fcgi/getVoteActityRankList?'    
    headers = {"User-Agent": UserAgent(verify_ssl=False).random}    
    params = {'raw': 1,
               'vappid': 51902973,
               'vsecret': '14816bd3d3bb7c03d6fd123b47541a77d0c7ff859fb85f21',
               'actityId': 107015,
               'pageSize': 101,
               'vplatform': 3,
               'listFlag': 0,
               'pageContext':'' ,
               'ver': 1,
               #             
               '_t': 1590324974706,
               '_': 1590324974708
        }
    #    
    re = requests.get(url,headers = headers,params = params) 
    # json  json        
    data = json.loads(re.text)
    
    Li_list = data['data']['itemList']
    
    rank = 0
    data_list = []
    
    #           
    for li in Li_list:
        rank += 1
        item = {}
        #      
        item['    '] = rank
        item['    '] = li['itemInfo']['id']
        item['    '] = li['itemInfo']['name']
        item['    '] = li['itemInfo']['mapData']['poster_pic']
        item['    '] = li['statusInfo']['voteBtnTxt']
        
        #    doki ,        id        
        #      id   doki       、  、  、         
        #       ,    xpath   
        id_ = item['    ']
        #      doki      ,   get_Girlinfo  
        html = get_Girlinfo(id_)
        item['   '] = html.xpath('.//div[@class="followers_count"]/text()')[0]
        info = html.xpath('.//div[@class="wiki_info_1"]//span[@class="content"]/text()')
        item['  '] = info[-5]
        item['  '] = info[-3]
        item['  '] = info[-2]
        item['   '] = info[-1]
        info2 = html.xpath('.//div[@class="wiki_info_2"]//span[@class="content"]/text()')
        item['  '] = info2[0]

        url_ai = item['    ']
        #     AI    
        age,beauty = txfaceScore(url_ai) 
        item['AI    '] = age
        item['AI    '] = beauty
        #  face++    
        faceage,beauty_w,beauty_m  = ksfaceScore(url_ai) 
        item['face++AI    '] = faceage
        item['face++      '] = beauty_w
        item['face++      '] = beauty_m   
        data_list.append(item)
        
    return data_list
3.2 requests+xpath 를 사용 하여 작은 언니 의 기본 정 보 를 얻 습 니 다.

def get_Girlinfo(id_):
    url_ = f'https://v.qq.com/x/star/{id_}?tabid=2'
    headers = {"User-Agent": UserAgent(verify_ssl=False).random} 
    re_ = requests.get(url_,headers = headers)
    #             ,            
    re_.encoding='utf-8'
    #                 xpath,        
    html = etree.HTML(re_.text)
    #            ,             
    return html
4.requests 를 사용 하여 api 인 터 페 이 스 를 호출 하여 작은 언니 의 얼굴 값 평 점 을 얻 습 니 다.
처음에 저 는 텐 센트 클 라 우 드 의 얼굴 인식 을 사 용 했 습 니 다.데 이 터 를 통 해 101 명의 창조 영 언니 중 21 명의 얼굴 이 만점 을 받 을 만 한 가치 가 있 는 것 을 발 견 했 습 니 다.제 가 좋아 하 는 작은 언니 인 주주주주주인애 가 가장 낮은 점 수 를 받 았 습 니 다.그러면 어떻게 합 니까?그래서 이번 에는 눈 에 띄 지 않 는 페 이 스+얼굴 인식 을 추가 해 비 주 얼 평 점 대 비 를 했다.
4.1 텐 센트 구름 얼굴 인식
텐 센트 클 라 우 드 얼굴 인식 은 제3자 라 이브 러 리 텐 센트 클 라 우 드-sdk-python 에 사용 해 야 합 니 다.

pip install tencentcloud-sdk-python
호출 을 진행 할 때 관련 가방 을 먼저 불 러 와 야 합 니 다.

from tencentcloud.common import credential
from tencentcloud.common.profile.client_profile import ClientProfile
from tencentcloud.common.profile.http_profile import HttpProfile
from tencentcloud.common.exception.tencent_cloud_sdk_exception import TencentCloudSDKException 
from tencentcloud.iai.v20180301 import iai_client, models
\#텐 센트 구름 얼굴 검 측 및 분석
\#주어진 그림 속 의 얼굴(Face)의 위치,해당 하 는 얼굴 속성 과 얼굴 품질 정 보 를 검사 합 니 다.
\#위치 포함(x,y,w,h)
\#얼굴 속성 은 성별(gender),나이(age),표정(expression),매력(beauty),안경(glass),헤어스타일(hair),마스크(mask)와 자세(pitch,roll,yaw)를 포함한다.
\#얼굴 품질 정 보 는 전체 품질 점(score),모호 점(sharpness),빛 점(brightness)과 이목 구비 차단 점(completeness)을 포함한다.
클 라 우 드 API 를 처음 사용 하기 전에 사용 자 는 먼저 텐 센트 클 라 우 드 콘 솔 에서 보안 증명 서 를 신청 해 야 한다.보안 증명 서 는 시 크 릿 ID 와 시 크 릿 키 를 포함 하고 시 크 릿 ID 는 API 호출 자의 신분 을 표시 하 는 데 사용 되 며 시 크 릿 키 는 서명 문자열 을 암호 화하 고 서버 에서 서명 문자열 을 검증 하 는 키 이다.시 크 릿 키 는 유출 되 지 않도록 엄 격 히 보관 해 야 한다.
우 리 는 나이 와 얼굴 값 만 평가 해 야 하기 때문에 함 수 를 만 들 때 age 와 beauty 두 필드 만 되 돌려 주면 됩 니 다.

def txfaceScore(url):
    try: 
    	#          ,            secretId,secretKey
        cred = credential.Credential("secretId", "secretKey") 
        httpProfile = HttpProfile()
        httpProfile.endpoint = "iai.tencentcloudapi.com"
    
        clientProfile = ClientProfile()
        clientProfile.httpProfile = httpProfile
        client = iai_client.IaiClient(cred, "ap-beijing", clientProfile) 
    
        req = models.DetectFaceRequest()
        #url                      url
        param = {"Url":url,"NeedFaceAttributes":1}
        params = json.dumps(param)
        req.from_json_string(params)
    
        resp = client.DetectFace(req) 
        respstr = resp.to_json_string().replace('false','0').replace('true','1')
        respdic = eval(respstr)
        #        json,                      
        age = respdic['FaceInfos'][0]['FaceAttributesInfo']['Age']
        beauty = respdic['FaceInfos'][0]['FaceAttributesInfo']['Beauty']
        
    except TencentCloudSDKException as err: 
        print(err)
    
    return age,beauty
4.2 얼굴+얼굴 인식
인터페이스 호출 은 매우 간단 합 니 다.당신 이 필요 로 하 는 요청 매개 변 수 를 설정 하 십시오.(여기 서 우 리 는 나이 와 비 주 얼:age,beauty)페 이 스+비 주 얼 평 점 은 남녀 시각 에서 의 비 주 얼 점수 두 가지 로 나 뉘 기 때문에 우 리 는 세 가지 값 을 되 돌려 야 합 니 다.나이,남자/여자 시각 비 주 얼 점수 입 니 다.
구체 적 인 함 수 는 아래 와 같다.

def ksfaceScore(pic_url):
    url = 'https://api-cn.faceplusplus.com/facepp/v3/detect'
    
    APIKey = '  key' 
    APISecret = '  secret'
    
    data = {"api_key":APIKey,
            "api_secret":APISecret,
            "image_url":pic_url,
            "return_attributes":"age,beauty"
            }
    res = requests.post(url,data = data)
    dic_ = eval(res.text)
    #        json,                      
    age = dic_['faces'][0]['attributes']['age']['value']
    beauty_w = dic_['faces'][0]['attributes']['beauty']['female_score']
    beauty_m = dic_['faces'][0]['attributes']['beauty']['male_score']
    
    return age,beauty_w,beauty_m
파 이 썬 파충류 가 2020 걸 그룹 오디 션 데 이 터 를 얻 는 것 에 관 한 이 글 은 여기까지 소개 되 었 습 니 다.더 많은 관련 파 이 썬 이 걸 그룹 을 얻 는 내용 은 우리 의 이전 글 을 검색 하거나 아래 의 관련 글 을 계속 찾 아 보 세 요.앞으로 많은 응원 부 탁 드 리 겠 습 니 다!

좋은 웹페이지 즐겨찾기