为保证阅读体验,强烈建议点击原文链接阅读

原文链接:知乎凡尔赛沙雕语录,究竟有多沙雕?

大家好,我是小一

前一阵子,凡尔赛文学突然爆火网络,特别是在知乎上竟然出现了大量的凡尔赛语录

随便点进去一个问题一看,确实一张口就是老凡学家了,够沙雕

甚至有的问题回答竟然有好几百,关注和浏览量都还挺高。

突发奇想,要不?把这些回答爬下来,分析一下【凡学家们】究竟有多沙雕?


凡尔赛问题定位

首先,在知乎搜索【凡尔赛语录】,发现有几个相关问题

其中第二个和我们要的结果比较相似


点进去后可以发现这其实是个回答,关于这个提问共有 225 个回答。

可以看到当前网址是下面这个

https://www.zhihu.com/question/429548386/answer/1575062220

去掉 answer 以及后面的部分就是这个问题的网址,这个网址我们会在后面的爬虫中用到。

特别是后面的一串数字是问题 id,作为知乎问题的唯一标识。

https://www.zhihu.com/question/429548386

爬取问题回答

研究一下上面的网址,我们发现需要爬取两部分数据:

一部分是问题的详情,包括创建时间、关注人数、浏览量、问题描述等。

一部分是问题的回答,包括每个答主的用户名、粉丝数等信息,问题回答的具体内容、发布时间、评论数、点赞数等信息。

其中,问题详情可以直接爬取上面的网址,通过 bs4 解析页面内容拿到数据

问题的回答则需要通过下面的链接,通过设置每页的起始下标和页面内容偏移量确定,有点类似于分页内容的爬取。

def init_url(question_id, limit, offset):    base_url_start = "https://www.zhihu.com/api/v4/questions/"    base_url_end = "/answers?include=data%5B%2A%5D.is_normal%2Cadmin_closed_comment%2Creward_info%2Cis_collapsed%2Cannotation_action%2Cannotation_detail%2Ccollapse_reason%2Cis_sticky%2Ccollapsed_by%2Csuggest_edit%2Ccomment_count%2Ccan_comment%2Ccontent%2Ceditable_content%2Cvoteup_count%2Creshipment_settings%2Ccomment_permission%2Ccreated_time%2Cupdated_time%2Creview_info%2Crelevant_info%2Cquestion%2Cexcerpt%2Crelationship.is_authorized%2Cis_author%2Cvoting%2Cis_thanked%2Cis_nothelp%2Cis_labeled%2Cis_recognized%2Cpaid_info%2Cpaid_info_content%3Bdata%5B%2A%5D.mark_infos%5B%2A%5D.url%3Bdata%5B%2A%5D.author.follower_count%2Cbadge%5B%2A%5D.topics&limit={0}&offset={1}".format(limit, offset)

    return base_url_start + question_id + base_url_end

设置每页回答数 limit=20,offset 则可以是0、20、40...

而 question_id 则是上面提到的网址后面的一串数字,这里是 429548386

逻辑想明白之后就是通过写爬虫获取数据了,文末有完整的爬虫代码获取方式,运行的时候你只需要修改问题的 id 即可。

由于篇幅问题,这里只贴主要的代码:

if __name__ == '__main__':    question_id = '429548386'    url = "https://www.zhihu.com/question/" + question_id    """获取问题的详细描述"""    title, question, follower, watched, answer_count, tag_list = get_question_base_info(url)    print("问题url:"+ url)    print("问题标题:" + title)    print("问题描述:" + question)    print("该问题被定义的标签为:" + '、'.join(tag_list))    print("该问题关注人数:{0},已经被 {1} 人浏览过".format(follower, watched))    print("截止 {},该问题有 {} 个回答".format(time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()), answer_count))

    """获取问题的回答数据"""    # 构造url    limit, offset = 20, 0    page_cnt = int(answer_count/limit) + 1    answer_data = pd.DataFrame()    for page_index in range(page_cnt):        answer_url = init_url(question_id, limit, offset+page_index*limit)        # 获取数据        data_per_page = get_answer_info(answer_url, page_index)        answer_data = answer_data.append(data_per_page)        sleep(3)

    answer_data.to_csv('凡尔赛沙雕语录_{0}.csv'.format(question_id), encoding='utf-8', index=False)

爬虫运行截图如下:


最终,该问题现有的 225 条回答都已经成功爬到

分析回答数据

每个答主都有自己的粉丝,粉丝多的答主应该回答质量比较高,才会受到大家的广泛关注。那,像这种沙雕语录他们也有涉及吗?

先来看一下粉丝数和赞同数的关系


可以发现,粉丝数多的答主的问题回答赞同数不一定高,反倒是粉丝数少的答主回答更沙雕些,广受大家认可。

那,赞同数多的回答评论数应该也不少,毕竟大家都会前排吃瓜,围观沙雕


果然,问题回答的赞同数和评论数基本呈线性分布

基于常识,越早的问题回答应该越容易受到关注,会吸引一大波吃瓜群众前来围观,时间越往后可能热度就过去了,也就少有人关注了。

看一下分布图:


可以看到,这个话题的关注度持续时间比较久,甚至十天后还有近千赞的回答产生,相比微博的热搜知乎热搜似乎持续时间更久一些。

最后,一起欣赏一下新时代的凡尔赛沙雕语录

一开口就是老凡尔赛人了!

说出来挺不好意思的,我是最近才知道鸡蛋有壳的,以前都是吃管家剥好的,一直以为鸡蛋都是白色的软软的

好烦,睡过了马尔代夫的航班,只能专机去了


今天,我的姐妹说要开跑车来接我下班,我说不要,打工人怎么能用跑车下班?

家里已经帮我包了一辆公车了,年卡,随我刷。

打工可能会少活十年,不打工我一天也活不了

早晨我把“早安打工人”发给了数位好友,无一人回复。后来我才意识到,打工的只有我一个,他们这些人上人还在睡觉。

对不起,是我认真了。


雇主让我早点去安空调

我说:“就不能晚点安吗?”

他说:“不能,打工人就是要早安!”


写在后面的话

本节语录+图片均来源于网络,侵权可以后台联系小一删除。

本节相关的爬虫代码已经整理完毕,原文 后台回复【凡尔赛】 获取源码。

文章说明

文章作者:xiaoyi 数据分析从业者,金融风控爱好者

文章首发:公众号【小一的学习笔记】

原文链接:知乎凡尔赛沙雕语录,究竟有多沙雕?

我是小一,坚持向暮光所走的人,终将成为耀眼的存在。

期待你的 三连,我们下节见。

知乎凡尔赛沙雕语录,究竟有多沙雕?相关推荐

  1. 爬取知乎“凡尔赛语录”话题下的所有回答,我知道点开看你的很帅气,但还是没我帅

    凡尔赛文学火了.这种特殊的网络文体,常出现在朋友圈或微博,以波澜不惊的口吻,假装不经意地炫富.秀恩爱. 普通的炫耀,无非在社交网络发发跑车照片,或不经意露出名牌包包 logo,但凡尔赛文学还不这么直接 ...

  2. Java波斯王子时之沙攻略_波斯王子时之沙详细操作按键指南

    波斯王子时之砂突破既有的地型局限及动作限制,让玩家们可以更巧妙地用地型与难缠的敌人战斗,不论是在角色动作.动态光影的表现以及地形上的各种物理变化,都大大的提昇了. 授权:免费软件 大小:1.36G 语 ...

  3. 解码郭台铭语录,50句你应该知道的“郭台铭语录”

    50句你应该知道的郭台铭语录. 一.速度篇 01.在今天的世界,没有"大"的打败"小"的,只有"快"的打败"慢"的. 0 ...

  4. SDC沙盒加密究竟适不适合源代码防泄密

    最近一直致力研发行业防泄密方案,做源代码加密防泄密的解决方案 目前为止,了解实施了不少项目,概括下来该行业有如下特点: 1.软件研发人员水平比较高,首先得做到不易被破解: 2.软件研发人员的反监控.反 ...

  5. android 沙盒 ios,iOS中的沙盒机制

    1.应用沙盒结构分析: 应用程序包:(图中的Layer)包含了所有的资源文件和可执行文件 Documents: 保存应用运行时生成的需要出持久化的数据,iTunes同步设备会备份该目录.例如,游戏应用 ...

  6. 沙盒勇者服务器维护,沙盒勇者攻略大全 沙盒勇者通关攻略

    沙盒勇者是一款精彩的像素风格的手游,那么沙河勇者该怎么玩,怎么通关,下面一起来看看吧. 首先发一下布局图 个人以└形状建立了三部分12×12大小的基地,地板全部转换成石砖. 机制一(建筑学): 类似于 ...

  7. 影子系统、沙盒、虚拟机的区别,沙盒化容器:是容器还是虚拟机,容器、虚拟机、虚拟环境的区别

    1 容器和虚拟机的区别 虚拟机是操作系统级别的资源隔离,而容器本质上是进程级的资源隔离. 2 虚拟机和虚拟环境的区别 虚拟环境是为了隔绝用户的多个运行环境,避免冲突. 虚拟机是为了隔绝多个用户之间的操 ...

  8. linux关闭沙盒模式,打开或关闭沙盒模式以禁用宏

    注册表项的特定位置因运行的 Access 版本.Windows 和 Access 版本的 (32 位或 64 位) 以及是否具有即点即用安装而异. 如果在从下面显示的可能选项中查找正确的注册表项时遇到 ...

  9. 盘点营销策划案例之2019年沙雕广告!

    • 引言 • "一时沙雕一时爽,一直沙雕一直爽!" 2019年是"沙雕广告"元年,"沙雕文化"开始变得大众化,没有人可以躲得过"沙 ...

最新文章

  1. R语言使用caret包的preProcess函数进行数据预处理:对所有的数据列进行SpatialSign变换(将数据投影到单位圆之内)、设置method参数为spatialSign
  2. 061_JavaScript闭包
  3. 在O(1)的时间内计算n个整数落在区间[a,b]的个数(预处理时间为O(n+k))
  4. java 实现中文排序,Java自定义比较器实现中文排序
  5. 全国计算机二级c 笔记,[IT认证]全国计算机等级考试二级C语言笔记.doc
  6. 峰Redis学习(6)Redis 数据结构(sorted-set的操作)
  7. pmp考试中变更的处理流程
  8. 计算机基础excel操作试题,大学计算机基础 excel测试题 求答案~~喵~~
  9. 写一个加密程序对文件加密
  10. Win7 启用Guest账户,设置登录界面不显示 Guest账户
  11. CS5213芯片|HDMI to VGA转换头芯片资料分享
  12. Android 学习
  13. 【Code】Python金字塔模型的实现(Pyramid)
  14. 无线wifi打印机服务器原理,一般无线打印机的连接方法及遇到常见故障解决办法...
  15. 怎么使用Git远程删除某个历史提交记录
  16. 知乎热榜:计算机专业的学生要怎样做才能避免成为低级的码农?
  17. UESTC人工智能 期末复习
  18. HTML CSS 如何设置颜色
  19. 【UML】例析UML类图的几种关系
  20. 基础练习 时间转换(给定一个以秒为单位的时间t,要求用“<H>:<M>:<S>”的格式来表示这个时间。<H>表示时间,<M>表示分钟,而<S>表示秒,它们都是整数且没有前导的“0”。例如,若t=0,)

热门文章

  1. PTA 用java编写 7-4 房产税费计算2022
  2. 投资黄金,当然选贸易场行员平台真宝金业,安全有保障,返佣高,平仓返。
  3. 从零开始足球战术分析
  4. android 圆形渐变背景,android实现圆形渐变进度条
  5. MATLAB生成三维体数据
  6. 做单:第3章 骂人的客户
  7. STM32 printf 输出到usart1
  8. USB大容量存储设备无法启动该怎么办?
  9. Facebok的动画框架pop
  10. 011 dilate(膨胀)、erode(腐蚀)