站在知乎肩上-做更强的自己(1)

最初的问题

是否存在这样一个程序,能有效识别出干货答案的过滤器?通过这些干货答案做更强的自己

背景:比较喜欢用手机刷知乎,觉得的确有一些干货回答.但是一个一个答案地这样去看,效率太低.

阶段0

最开始是把一些好的答案收藏在收藏夹中(感谢知乎提供此功能),然后没有多久就到达收藏限制:最多50个收藏夹.因为要分类,所以没多久就到50了.并且也没有多级分类呀.找起来也不方便.这让理工直男崩溃(好吧,夸张了点).

这本身也反映了一个有意思的地方,对事物的划分远比想的要多得多.
让我背50个分类,还真不容易做到.但是对一个回答进行大致分类很容易突破50.去图书馆看下就知道分类的复杂性.

另外分类是有价值的.一类知识往往更另一类知识是没有啥关系,也就是一毛钱的关系也没有.过了很久,我才明白一个基本的道理(鸡汤?)这个世界主要有两种事情:一种关我屁事,另一种不关我屁事.分类主要讲的就是这个道理.

阶段1

掌握了一把新锤子,对世界的看法也略有点不同.(感谢知乎的开放性).

刷久了知乎,对一些知乎上的大V有了认识.基于一个好答案的作者,通常还能写出另外一个好答案的常识.开始刷一些人的答案.

很快,发现了新问题.我CAO,不少人狂写答案,也狂收藏别人的好答案.通常一个人写几百个答案+几百个收藏.首先肯定是手机不给力,刷个答案要等几秒,流量也受不了.

很早的时候,就知道网络爬虫这个东西.可以用来抓取网页内容.知乎除了手机移动端软件,还有网页版本.就想着也许能搞个小爬虫把我的收藏弄下来,然后导入笔记软件.好处有2个:1)笔记软件可以多级分类管理;2)可以节省流量,打开也更顺畅.

不过了,首先想着做一个小爬虫(做个比较稳定能用的小爬虫)也挺费时间的(几天做一个XX,我是不大信的,做个不稳定的原型小玩具还行.能用的东西总是要解决一堆繁琐的小麻烦.),其次这玩艺的意义又真的有多大?也就是值得的问题.

然,python已经出到3.x了.我还没有一点了解,除了知道有这么个语言存在.虽说我的职业是软件工程师.但却是相当古董的C粉.知道lisp的优点,C的强大,C++的牛B.然而真正掌握的还行只有C.得益于python的悠久历史,各类库的支持,外加一堆base python net spider(网络爬虫)的实例.我想在这样条件下做个小爬虫应该要轻松许多,是时候学下python做爬虫了.
有一个清楚的认识是:学术性的东西,上知乎是不合适的.

没多久(约2周),就能用python下载自己知乎的收藏:) 然后开始下载那些大V的收藏夹.
note:这真的不算是14天学会python.离学会还差得远.只是说目的真不是学python.

阶段2

做一个可以被别人利用的人,其实并不是坏事.

又花了一些时日,小爬虫可以爬下指定用户的所有收藏夹.
有了这把锤子,自然开始了疯狂下载模式.没多久,就下载了上万条答案!事实上也就下载了20+人的收藏.
一小时3600秒,10秒下载一个条答案.那么一个晚上10h*360=3600条.
我CAO,两个大问题来了:这下载能力远远超过我看答案的能力.其次,我要去下载谁的答案?

插个小段子 # 禁止今日头条和悟空问答爬虫抓取知乎网站内容 Crawl-delay: 10
https://www.zhihu.com/robots.txt

看来还是有不受欢迎的来客!下载别人的东东还是要有基本礼仪:不要下载太快,10秒下载一个条答案.

回到正题,可以预料很快我就不知道要去下载谁的收藏答案,其次若知道要下载谁的,很快就有N多海量答案等着我去看.

还有一个小疑惑:既然知乎是一个”注册知乎,发现更大的世界”的世界.感觉是一个没有地图索引的世界.人们随机的在这个世界跳来跳去.那个搜索功能还能做得更好.

阶段3

假说:牛B的人,收藏的答案也比较有质量

如果这个假说比较合理,那么首先去下载牛B的人是个不错的选择.
关注的人多就是牛B的人,也是个合理的直观想法.
然而我想说,其实不少名人有很多粉,但是他们真的不关联好答案,应该是比较忙.

虽然如此,以关注人多少来做为标准是一个可行的方案.

方案思路如下:
1.从一组关注人为起点.
2.采用广度优先算法,把每个关注人的关注作为下一次搜索的起点.
3.重复几次1-2步骤. 
按照6度分离理论,理论上每个人之间最短距离不超过6个.事实上也的确遍历几层(不太记得,好像是8层)就能收集100K+的人.

前10的大牛名单:
follow:就是关注人数,张佳玮百万级的关注.

$0
id:张佳玮用户标识   
href:/people/zhang-jia-wei
answer:3078paper:741follow:1448815
$1
id:李开复用户标识  1   
href:/people/kaifulee
answer:107paper:2follow:1017728
$2
id:黄继新用户标识
href:/people/jixin
answer:782paper:95follow:811877
$3
id:丁香医生用户标识
href:/org/ding-xiang-yi-sheng
answer:260paper:63follow:787807
$4
id:周源用户标识
href:/people/zhouyuan
answer:339paper:8follow:780740
$5
id:yolfilm用户标识   
href:/people/yolfilm
answer:1594paper:0follow:773013
$6
id:张亮用户标识
href:/people/imike
answer:1443paper:112follow:724311
$7
id:张小北用户标识   
href:/people/zhang-xiao-bei
answer:1336paper:67follow:669419
$8
id:李淼
href:/people/amuro1230
answer:1173paper:201follow:666883
$9
id:朱炫
href:/people/zhu-xuan-86
answer:206paper:52follow:660879
$10
id:采铜用户标识   
href:/people/cai-tong
answer:984paper:78follow:648206

猜你喜欢

转载自blog.csdn.net/pcj2007/article/details/79031231