Node实现知乎API
发布在学习笔记2016年3月11日view:8183YiksiAssow开源项目
在文章任何区域双击击即可给文章添加【评注】!浮到评注点上可以查看详情。

项目地址:zhihu-api

事情的初衷是这样的:我想编写一个知乎的爬虫,用来抓取问题、回答以及用户的信息,从而进行一些简答的数据分析。因为知乎官方并没有提供开放API,所有只能自己抓页面来解析了。

很早以前写过一个非常简单的知乎爬虫(有Node和Python版本),后来发现并不好用。一是当时代码结构确实比较乱,不利于扩展和维护;二是知乎页面的DOM结构发生了一些变化(例如元素的class等)。

我的想法是该项目只实现基础的数据接口,而不去实现复杂的数据抓取逻辑(例如广度/深度优先抓取用户网络),从而增强项目的复用性和扩展性。

整体逻辑是使用cookie模拟登陆,然后抓取页面,解析页面,最终返回JSON格式的数据。目前的依赖模块为request和cheerio。所有的接口都是Promise风格。

目前只实现了问题和用户的一些基础接口,还有很多工作要做。欢迎感兴趣的朋友贡献代码。

评论
发表评论
暂无评论

友情链接 大搜车前端团队博客
我的收藏