车票?工作?对象?Python教你优雅解决年关三大难题

科技资讯 2020-01-19

车票?工作?对象?Python 教你优雅解决年关三大难题

作者 | 数据不吹牛

最近,很多朋友都已经连续多日沉浸在即将(已经)放假的快感之中,化身渔夫,兢兢业业地摸鱼。

但是!你真的准备好过年了嘛!你真的知道为什么过年叫年关吗?

让小Z来给你讲个故事,从前,有一只年兽,一到春节就….

Sorry!走错片场了,都2020年了,过年之所以叫年关,还不是因为东西南北漂的年轻人回家过年,总有三个绕不开的难题:

  • 合适的票买到了吗?

  • 你专业/工作到底是干啥的?工资多少?

  • 你对象呢?

合适的票,靠单身多年的手速,百折不挠的抢票毅力,还有那审时度势,在几百年不说话的好友群发个助力链接就跑的局势洞察力,抢到大概率是没问题的。

解决了票,脑海中已经出现,亲戚面带微笑的看向后两个问题的画面。

幸好,我们从小都知道,遇事不决想名言!

“站在前人的肩膀上看问题,身高上,我就能够比他高出一大截儿”这句名言(小Z胡说的),给了我无尽的灵感。

说到前人的肩膀,知乎不就是个绝佳的参考系吗?所以,我们用Python爬取了知乎上相关的热门问题:

车票?工作?对象?Python 教你优雅解决年关三大难题车票?工作?对象?Python 教你优雅解决年关三大难题

看一看多少人有类似的困惑,更重要的是,有什么可以拿来即用的秘籍。

知乎的部分爬取代码如下,完整代码和数据附在文末,跳过丝毫不影响阅读。

import pandas as pd

import numpy as np

import os

import json

import requests

def parse_page(url,headers):

html = requests.get(url,headers = headers)

bs = json.loads(html.text)

result = pd.DataFrame

for i in bs['data']:

headline = i['author']['headline'] #签名

gender = i['author']['gender'] #性别

user_type = i['author']['user_type']

user_id = i['author']['id']

user_token = i['author']['url_token']

follwer_count = i['author']['follower_count'] #关注人数

name = i['author']['name'] #用户昵称

vote_up = i['voteup_count'] #点赞数

updated_time = i['updated_time'] #更新时间

title = i['question']['title'] #问题

created_time = i['created_time'] #创建时间

comment_count = i['comment_count'] #评论数

can_comment = i['can_comment']['status'] #是否可以评论

content = i['content'] #内容,还需要再清洗

cache = pd.DataFrame({'用户ID':[user_id],'用户名':[name],'性别':[gender],'token':[user_token],'用户类型':[user_type],'签名':[headline],

'被关注人数':[follwer_count],'创建时间':[created_time],'更新时间':[updated_time],'评论数':[comment_count],

'点赞数':[vote_up],'是否可以评论':[can_comment],'内容':[content],'问题':[title]})

result = pd.concat([result,cache])

return result

车票?工作?对象?Python 教你优雅解决年关三大难题

未雨绸缪,还是事后吐槽?

我们发现,“过年回家,亲戚问是做什么工作的,该说实话吗?”这个问题下,大多数是结合自身经历来吐槽的。

车票?工作?对象?Python 教你优雅解决年关三大难题

应了那句“吐槽不避亲”的古训,91.68%的用户没有匿名,当然,也可能是知道亲戚们都不上知乎。

未知用户性别用户实在太多,从仅存的男女占比来看,似乎男性吐槽意愿更强。

接着,更有意思的回答时间分布来了:

车票?工作?对象?Python 教你优雅解决年关三大难题

2018年2月7号(小年前一天),未雨绸缪的题主在知乎抛出了这个问题,当天有15个热心人抛砖引玉,在小年(8号)达到顶峰,日新增68个回答。

然而,9号之后,年关越来越近,回答数却越来越少,在2月15号除夕之后,新回答者销声匿迹,莫非大家都已经做好了准备?不过这更可能和知乎的流量分发有关。

问题沉寂了一年之后,热度在19年2月9日(大年初五)一飞冲天,221个热乎的回答蹭蹭涌入,事后吐槽之密集,以身手敏捷著称的七大姑八大姨都没能躲过。

但是,初五的辉煌,初六没能承接上,初七之后更是回归平淡。这个回答,今年还会不会再蹦跶呢?

车票?工作?对象?Python 教你优雅解决年关三大难题

“搞互联网好啊!正好我家网连不上!

我们继续扒一扒,上个问题回答者从事行业和岗位的秘密。

必须先吐槽一下大家填信息实在是太随心所欲了,让人清洗的头大。

行业写的都还挺规范,而涉及到学校和岗位,几百个回答下竟然几乎没有重样的!

“摸鱼情感教育”是什么岗位?学校填“哈尔滨佛学院”的是哈佛吗?工作写“讨饭XX年”的朋友是认真的吗!

得,我们先勉强看一下行业TOP10:

车票?工作?对象?Python 教你优雅解决年关三大难题

不得不说,互联网+计算机软件行业真乃吐槽双壁(占比和平台也有关系),两者合计占比超过59%,傲视群雄。

“产品经理?毕业就当了经理!能不能给你外甥走个后门啊!”

“数据分析?嗨呀,帮我分析分析下一期彩票!”

“做IT的?我的路由器出了点问题来帮我敲敲!”

“设计?广告设计?广告这些东西可真招人烦啊!”

互联网的发展大大超出了老一代人的想象,有朋友总结出来一个经验,亲戚说啥就是啥,不要解释,越描越黑。毕竟,最重要的还是开心嘛。

车票?工作?对象?Python 教你优雅解决年关三大难题

“现在能挣多少啊?

工资是一个严峻的话题。

一旦疏忽,父母面上无光,稍有不慎,又扫了七大姑八大姨的兴致。

综合点赞和回答数据,我们做了一个加权排序,排除炮灰答案后,逐字审读,悟出了三个大招。

1、乾坤大挪移

这一招的宗旨很简单,任何话题都是可以转移的。

“小Z,工资多少啊?”

“阿姨,工资这点小事等会说,我给你说说我今年搞的几个有意思的分析,您一定感兴趣!”

一个小时后,阿姨已经忘了当初的问题。

2、惜字如金

“小Z,工资多少啊?”

“尚可!”

“到底是多少啊?”

“够吃”

3、巧用同比

“小Z,工资多少啊?”

“有进步,比去年高15%呢”

“去年多少啊?”

“比前年高10%呢!”

车票?工作?对象?Python 教你优雅解决年关三大难题

“你对象呢?

由于非单身狗回答过于复杂和困难,此回答主要适用于单身狗。

由于此问题过于八卦且能无限延展,此回答亦不能用常规解法。

这天,你正要开黑,远方的七舅老爷推门而入。

“你对象呢?”

“啊!这个问题超纲了啊!是我的知识盲区了!”

“有还是没有!”

“有有有,别急嘛”,你打开了抽屉,拿出棋盘。

“你玩儿我呢!”

“哪敢哪敢哪敢,对象照片在我电脑上呢!”

说着,你打开了电脑,但手一刻也没有在相册逗留,而是径直冲向了一个py文件,打开了编辑器,在被锤倒之前,无比清晰的记得那个文件最后几行代码:

车票?工作?对象?Python 教你优雅解决年关三大难题

注:上述代码无限打印“对象”两个字,本文完整代码和源数据,后台回复“知乎过年”即可获取。

只一瞬,什么国民老公,什么后宫佳丽三千人,论对象数量,他们都还只是个弟弟。

#欢迎来留言#你的“年难关”是什么?请说出你的故事哦!

代码:

https://github.com/seizeeveryday/DA-cases/tree/master/Zhihu

车票?工作?对象?Python 教你优雅解决年关三大难题

Top