zhihu-py3 - 知乎非官方 API 库


MIT
跨平台
Python

软件简介

zhihu-py3
本质上是个爬虫,但是为了表现的像个API,所以没有加上多线程等特性,不太适合大量数据抓取,勉强可用于客户端开发。运行在python3.x环境下,不支持py2。

功能:

  • 登录知乎

  • 获取问题相关数据

  • 获取答案相关数据

  • 获取用户相关数据

  • 获取话题相关数据

  • 获取收藏夹相关数据

  • 获取专栏相关数据

  • 获取专栏文章相关数据

  • 执行用户动作(点赞,关注,感谢等)

安装:

已将项目发布到pypi,请使用下列命令安装

(sudo) pip(3) install (--upgrade) zhihu-py3

希望开启lxml的话请使用:

(sudo) pip(3) install (--upgrade) zhihu-py3[lxml]

例子:

登录

from zhihu import ZhihuClient

ZhihuClient().create_cookies('cookies.json')


====== zhihu login =====
email: <your-email>
password: <your-password>
please check captcha.gif for captcha
captcha: <captcha-code>
====== logging.... =====
login successfully
cookies file created.

获取问题信息

from zhihu import ZhihuClient

Cookies_File = 'cookies.json'

client = ZhihuClient(Cookies_File)

url = 'http://www.zhihu.com/question/24825703'
question = client.question(url)

print(question.title)
print(question.answer_num)
print(question.follower_num)
print(question.topics)

for answer in question.answers:
    print(answer.author.name, answer.upvote_num)


关系亲密的人之间要说「谢谢」吗?
627
4322
['心理学', '恋爱', '社会', '礼仪', '亲密关系']
龙晓航 50
小不点儿 198
芝士就是力量 89
欧阳忆希 425
...

更多例子请看文档:http://zhihu-py3.readthedocs.org/zh_CN/latest/