中国裁判文书网数据爬虫的坑

嗯,我得承认,这网站给我的第一印象就让我非常不想搞:极慢的加载速度外加明显的动态页面特征以及那个任你东西南北点他就是不变一个字的URL,满满的一股需要抓包外加搞不好还有逆天反爬虫的即视感。

事实证明丫就是这样的

特棒

😄

PRESS START

至于为啥爬这玩意儿就不写了,反正没有违反伟大的太阳光辉什么的

开浏览器调试发现明显的JSON传输,名字更是让人恨不得猜不出来这玩意儿就是数据:ListContent。暗自庆幸,点开发现一般内容是明文另一半是乱码——

你是在搞笑。jpg

检查了下发现是我点错了= =两个请求,一个树一个内容。

把参数一股脑抄下来填进字典里就是一发Request,结果华丽丽的出现了!200!成功了!

醒醒

CONTINUE?

点开发现返回内容就俩单词:remind key

算你狠

仔细看参数,带着几个奇怪的名:guid、number、vl5x。往上翻起他的请求发现还出现了两个GetCode,咋一看跟验证码一样。guid看着像uuid先不管,vl5x又是个啥?

翻翻GetCode发现第二个响应就是number,提交的参数就一个guid,ok这个问题解决。

Cookie里发现有个长得挺像的vjkl5,第一个请求就给了这个东西,从那之后每个请求都作为参数的一部分,嗯那还跑的了你?猜想这玩意儿跟vl5x脱不了干系。

翻js,发现一个奇怪的getKey方法,里面还夹杂一个cookie = getCookie('vjkl5')
嗯,真乖。

GAME OVER?

直接复制下来存本地,加载execjs模块,把上面那行替换成cookie=提交请求获得的vjkl5cookie值,期间还犯了一回js_data.replace('VJKL5_TEXT', vjkl5)的错误,行了,返回的东西直接就是vl5x。

扔进参数字典,随手生成个uuid扔进去,数据乖乖的出来了。

这次你咋不乱码了?

更新

新的爬虫做好了,这网站服务器也挂了。

Emmmmm

Author: Yorushika Shi
Link: https://sh.yorushika.co/post/cout-gov-cn-craw/index.html
Copyright Notice: All articles in this blog are licensed under CC BY-NC-SA 4.0 unless stating additionally.