用Python爬取了几千条相亲文案,终于发现了告别单身的秘密

前不久,小编刷到这样一条短视频,“1.7亿的90后仅有约1000万对结婚, 结婚率不到10% ”,当然我们也无法查实当中数据的来源以及真实性,不过小编倒是总能听说身边的朋友在抱怨脱单难、找不到合适的对象。
用Python爬取了几千条相亲文案,终于发现了告别单身的秘密_第1张图片
今天小编通过Python写了一个简单的脚本在抓取公开的相亲文案,看看 在相亲的都是些什么样的人 ?他们的 择偶标准又是什么样子的 ?什么样子的人更加容易脱单?

代码的编写过程

Python
requests
re
import requests
from tenacity import *
import re
import time

很多时候对遇到 请求超时的情况 ,因此当出现一次错的时候,我们会多尝试几次,因此这里使用 retry 装饰器来多次尝试

@retry(stop=stop_after_attempt(5))
def do_requests(url):
    response = requests.get(url, headers=headers, proxies=proxies, timeout=10)
    return response.text

我们抓取的数据包括 出生年份、身高/体重、学历、收入、职业、自我介绍、择偶标准、车房情况 等等,都是通过正则表达式 re 库来实现的,

date_of_birth = re.compile("
①出生年月/星座(.*?)
"
, re.M | re.S) sex = re.compile("
【基本资料】(.*?)
"
) height = re.compile("
②身高/体重(.*?)
"
) education = re.compile("
⑤学历(.*?)
"
) jobs_1 = re.compile("
⑥职业(.*?)
"
) income = re.compile("
⑦月均收入(.*?)
"
) married = re.compile("
⑨有无婚史(.*?)
"
) house_cars = re.compile("
⑧车房情况(.*?)
"
) self_intro = re.compile("
⑪ 自我介绍(.*?)
"
) requirements = re.compile("
【择偶标准】
(.*?)"
) family_member = re.compile("
⑩家庭成员(.*?)
"
)

下面我们通过 pyecharts 库来绘制一下分析的结果

结果的可视化展示

我们先来看一下性别比例,从分布来看, 女生前来相亲的比例更高 ,主要也是因为数据源是来自北京、上海、杭州等 大城市的相亲介绍 ,大城市中似乎女生脱单更加困难一些,
用Python爬取了几千条相亲文案,终于发现了告别单身的秘密_第2张图片
我们再来看一下单身的女性的特征,首先她们的年龄主要集中在 94、93以及95年左右 ,正好都是处在适婚的年龄
用Python爬取了几千条相亲文案,终于发现了告别单身的秘密_第3张图片
而她们的学历, 本科占到了绝大多数 ,基本上都有本科的学历,而 大专的占比排在第二 ,硕士和博士处于少数
用Python爬取了几千条相亲文案,终于发现了告别单身的秘密_第4张图片
另外小编也对单身女性的星座做了一个统计,发现 处女座 、天秤座以及 射手座 、白羊座的女性 单身率略高一些
用Python爬取了几千条相亲文案,终于发现了告别单身的秘密_第5张图片
最后,我们来看一下她们的择偶标准吧,小编将她们的 择偶标准 单独提取出来,然后绘制成了词云图

review_list = []
reviews = get_cut_words("".join(df_girls["requirements"].astype(str).tolist()))
reviews_counter = Counter(reviews).most_common(200)
print(reviews_counter)

for review in reviews_counter:
    review_list.append((" " + review[0] + " ") * review[1])

stylecloud.gen_stylecloud(text=" ".join(review_list), max_words=500, collocations=False,
                          font_path="KAITI.ttf", icon_name="fab fa-apple", size=653,
                          output_name="4.png")

最后呈现出来的样子如下图所示
用Python爬取了几千条相亲文案,终于发现了告别单身的秘密_第6张图片
可见相亲市场上的女生,她们首先是希望男方是要 有房有车 的,其次要是男方之前存在婚史,女生会比较介意,然后要是 有稳定的工作 、有能力有责任心,通常都会给女生留下比较好的印象,而至于外在条件上,大多数女生的回答则是身高在 175-180左右 ,年龄在 90-97年之间

写在最后

近年来,随着人们思想观念的改变, 相亲也逐渐得到年轻人的接受与认可 ,特别是对于那些圈子比较窄,接触不到异性的人而言。小编希望每个人都能够在最后收获爱情,拥有美好的生活。

你可能感兴趣的:(Python,程序人生,python,开发语言,爬虫,程序人生,数据分析)