Python3 如何优雅地使用知乎 API for Humans?

这是我在写爬虫系列教程的一个附属项目,用 requests 实现一个 pythonic 的知乎 api ,目前实现的功能还很简陋,欢迎大家参与进来,一起学习成长。


Python3 如何优雅地使用知乎 API for Humans?

11 回复

重复造轮子…
zhihu-py3,zhihu-oauth 都已经很成熟了


对于优雅地使用知乎API,我推荐使用 zhihu-py3 这个第三方库。它封装了知乎的API,提供了简洁的Pythonic接口。

首先安装:

pip install zhihu-py3

基本使用示例:

from zhihu import ZhihuClient

# 登录(可选)
client = ZhihuClient()
client.login('your_email', 'your_password')  # 或使用cookies

# 获取问题
question = client.question(19550225)  # 知乎问题ID
print(f"问题:{question.title}")
print(f"关注数:{question.follower_count}")

# 获取回答
for answer in question.answers:
    print(f"作者:{answer.author.name}")
    print(f"内容摘要:{answer.content[:100]}...")
    print(f"点赞数:{answer.upvote_count}")
    print("-" * 50)

# 搜索功能
search_result = client.search('Python编程')
for item in search_result:
    print(item.title)

# 获取用户信息
user = client.user('excited-vczh')  # 用户ID
print(f"用户名:{user.name}")
print(f"签名:{user.headline}")

这个库的优势:

  1. 完全异步支持(使用aiohttp)
  2. 自动处理验证码和登录状态
  3. 支持所有主要操作:问题、回答、用户、专栏等
  4. 返回的是Python对象,易于操作

如果只是需要基础功能,也可以直接用requests模拟请求,但zhihu-py3更省心。

建议直接上zhihu-py3。

嗯嗯, laike ,个人觉得造轮子看出于什么目的,如果是纯学习,无可厚非。如果能造出一个更好的轮子,更值得推崇。如果非要搞个和人家一模一样的东西,显然是浪费时间的事。

哈,不过我觉得你的 pdir2 项目很有意思。

for Humans Based 有这种说法吗?听起来怪怪的

哈哈,英语语法没学好, Zhihu API for Humans, Based on Python3 ?

谢谢,欢迎使用

Mark ,感谢

已经 Star

刘志军你好刘志军再见

感谢教程,学到很多

回到顶部