玩知乎很久了,在知乎上学到不少知识,也学到不少抖机灵的技巧。作为一个知乎重度用户兼技术宅,简单抓取了一下知乎的一点数据,力求看到一个尽可能真实的知乎社区。
数据抓取
知乎没有可以一页一页翻取用户资料的列表页,而且用户首页URL也没有规律可循,完全是用户自定义的。考虑到我不准备拿下全部知乎用户,只希望取到一批质量不错的优质用户,我的抓取策略是这样的:用一个知乎大牛入手,抓取他的关注列表,然后进入他的关注列表,抓取每个人的资料后再抓取这这些人关注的列表,依次走下去。
第一步,我们想要生成fibonacci数列前N项,我们可以这样做:
1 | def fib(size): |
执行可以得到输出如下:1
2In [1]: fib(10)
0 1 1 2 3 5 8 13 21 34
这个函数的问题在于,我们只能调用它输出结果,并没办法拿到返回值,于是通用性不够。现在对这个函数做一点修改如下: