一、前言
大家好,首先说明的是,这是一篇技术文,也是一篇not
技术文,今天分享的是,当我获取了微信小程序英文取名
的3500多个微信用户昵称、年龄段后,分析得到下面解果。。。
二、Let's get it
1.基本信息获取
1.访问英文取名
的用户基本信接口,获取英文取名
用户微信名(NickName
)、访问次数(Count
)、总数据集(ResponseData
),并将微信名存入文件。
# 获取所有用户数量和相关信息
def get_json():
# 获取入口
search_url = '英文取名用户接口,欢迎扫码使用英文取名,生成一个最适合你的英文名'
# 发送http请求,获取请求页面
search_response =requests.get(search_url)
# 设置编码
search_response.encoding ='UTF-8'
# 将页面转变成json代码格式
search_json =search_response.json()
# 获取我们需要的数据,是列表格式
our_data =search_json['ResponseData']
list_len = len(our_data)
print('总用户数有:' + str(list_len))
user_visit_numbers = 0
data_research = 0
NickName = []
for x in our_data:
user_numbers = x['Count'] +user_visit_numbers
if x['NickName'] == '':
data_research += 1
NickName.append(x['NickName'])
print("微信名获取失败量:"+str(data_research))
print(NickName)
name = ['微信名称']
file_test =pd.DataFrame(columns=name, data=NickName)
file_test.to_csv(r'I:/data.csv',encoding='utf-8',index=False)
print('总访问量:' + str(user_visit_numbers))
运行结果:
总用户数有:3549
微信名获取失败量:0
总访问量:4573
2.读取所有微信名,数据分类
(1)读取微信名
# 读取文件,取出微信名
def get_name():
NickName = []
with open('I:/data.csv','r',encoding='utf8') as file :
i = 0
for line in file:
if i == 0: # 去除表头
i = 1
continue
line = line.strip() # 去除换行符
NickName.append(line)
return NickName
(2)数据分为以下六大类
中文名
变量名
数据类型
|
|
|
全中文昵称 |
ch_name |
list |
全英文昵称 |
en_name |
list |
中文和数字混合昵称 |
ch_di_name |
list |
包含图片表情昵称 |
img_name |
list |
其他昵称 |
other_name |
list |
# ch :Chinese
ch_name_number = 0
ch_name = []
# en :English
en_name_number = 0
en_name = []
# di : digtal
di_name_number = 0
di_name = []
# img : image
img_name_number = 0
img_name = []
# ch_di : Chinese and digtal
ch_di_name = []
# other : other
oth_name_number = 0
oth_name = []
(3)数据分类判断
# 昵称全中文判断
def is_all_ch(keyword):
for c in keyword:
# 包含常见中文字符
if not ('\u4e00' <= c <= '\u9fa5'):
return False