0%

知乎话题树爬虫

简介


跟话题为入口解析完整话题树并获取每个话题的话题名称、话题ID、关注人数、父话题名称、父话题ID以文件形式保存

知乎话题的URL为https://www.zhihu.com/topic/话题ID/organize/entire

一个用户可关注多个话题

程序语言


Python

依赖项

  • pyquery
  • urllib2

程序工作流程


  1. 手动获取根话题ID作为程序执行入口
  2. 根据话题ID获取该话题页面数据并从待抓取队列中删除该话题
  3. 解析该页面的话题名称、话题ID、关注人数、父话题名称、父话题ID以文件形式记录同时压入已抓取队列
  4. 获取该话题的子话题ID并压入待抓取队列
  5. 判断子话题是否获取完毕未完毕则返回步骤3
  6. 判断待抓取队列是否为空若不为空返回步骤1
  7. 执行完毕

2017/07/12程序执行结果


基本信息

话题个数 数据条数 总关注人数 话题平均关注人数 80%关注量所需话题个数 关注人数最多的话题
35963 57396 1147085961 31896.28 546 (1.5%) 电影(人数:16926383)

数据说明

topicName topicID focusValue parentName parentID
话题名称 话题ID 话题关注人数 父话题名称 父话题ID

说明


  • Python入门 兼 第一个爬虫程序 为了获取爬虫程序健壮性经验 抱着多犯错多修改的态度 无数据库 无守护进程
  • 当一个话题含有多个父节点时产生多条数据
  • 源码地址
  • 博客地址
  • 教程地址