这个项目跟了有一点时间了,最近的话。又要跟回这个项目,然后今天又花了一段时间去分析它,这个网站经常改版,是一个比较头疼的问题。
在这里也要特别感谢一篇博文,是它的开始,让我一直有思路想到怎么去爬虫的。
来着开源中国:天眼查接口token, _utm获取
新版的天眼查,麻烦就麻烦在有登录Auth问题,还有就是权限问题,还有就是很多数据不像上文一样,可以直接一次性拿完,我的第一版用的mysql,但是这个版本嘛。我就打算用MongoDB先做一个缓存在写入到mysql之中。
第一步我们先分析,登录的入口:
首先我们登录这里的时候
等到流浪器返回了信息,并且存储到cookies之中
https://static.tianyancha.com/web-require-js/public/js/route/login-1d429f8752.js
在这个js,可以得到登录的操作信息
可以想到的就是,这里要用的是ContentType必须为application/json 还有就是 post请求
需要的cookies 是不是有点意思??
对的,就是用上次的请求来给下一次的key。
这样的话,你几乎能拿到页面的所有信息了
然后,在这里进一步解析,也是就是说,上面的json拿回来哦的就是包含了auth_token 等信息
还有一个就是
这里 的分页问题。
如果你直接点的话是会报403的错误问题。
遇到这个问题
还要替换一下上传请求过来的 _csrf ,_csrf_bk这个两个参数。
csrfToken基本就不变的啦。
然后还有一个代码要解析的数组是这个
_sgAttr
他的位置在于
类似这样的url当中
这里就几乎已经可以满足你的所有需求了,剩下的就看你怎么写页面解析了。