2019年9月份大更新
0 前言
之前的分析老版本对现在的版本不适用了,重新写过
告诉你一个小秘密,老版本仍在服役,可以使用,友情小链接是这样的oldwenshu,对应的分析源码分析
此次大更新后,网站非常流畅,方便了广大法律研究者,向文书网的程序猿们致敬!
一、分析
1. 网址
http://wenshu.court.gov.cn/
搜索刑事案件,程序猿常规操作F12,看下网络请求。
不出意外的话会碰到死循环,阻止你调试。
应对方法就是按上面的箭头指示点点点喽,点到下面这样既可。
这下可以开心的看Network了。重新搜索,找到Network,分析网页后台操作。
请求地址标黄了,后面参数没啥用,请求方法POST.。
2 cookie
cookie嘛,前端用了瑞数。
此处就不写了,毕竟服务端没有验证它,pass。
3 参数
3.1 pageID
网页id,请求首页即可获得,或者动下脑子想一想……
3.2 s8 是案件类型
案件类型对应code如下:
其余一些搜索参数如下:
3.3 ciphertext
加密生成的参数,追根溯源如下:
是有cipher()函数生成的,继续:
找到生成方法了,那就各显神通吧,调用JS生成也行,python直接用PyCryptodome的DES解密也行。
3.4 pageNum
这个是页码,不多说。
3.5 queryCondition
检索条件哦,不同检索条件参数不同,比如
[{“key”:“s8”,“value”:“02”}]
这个就是案件类型为刑事案件,“S8”对应“02”。
其它的类似。
3.6 cfg
每个页面都不同,对应的列表是这个
3.7 __RequestVerificationToken
唯一标识,随机生成的24位字符。
参数就这样。
4 解密
按照上面请求回来是一大串加密字符。
那就要解密了,其实也就是DES加密,与上面的cipher参数相似。
DES3.decrypt(result, secretKey)
result,secretKey都是从返回结果中获取。
解密后结果如下:
二 详情页类似
至此,打完收功~~~
已从数据库中下载7700万条裁判文书数据,有需要数据的伙伴可以(。・∀・)ノ゙嗨前台QQ7900-44912。
提取到EXCEL,主要字段如下: