开源项目搭建中国裁判文书网本地搜索WEB系统

2023年12月听新闻说裁判文书网将不再对公众开放,对于这个消息对于中国法制进程影响可谓深远。

今天在github上看到一个开源项目,中国裁判文书网本地搜索,处于好奇在本地搭建试一下,能否跑起来。

https://github.com/cncases/cases

下载原始数据(102G)

方法:通过bt下载,种子文件为 810air.torrent ,可以从本仓库下载,也可以通过链接 https://files.catbox.moe/810air.torrent

原始数据来源于马克数据网,文书数量超过8500万,约102G。下载后不要解压子文件,将文件路径填写到 config.toml 中的 raw_data_path 变量中;

我这边用迅雷下载,大概95G

下载程序并创建配置文件

从 releases 页面下载已编译好的二进制文件(推荐),https://github.com/cncases/cases/releases

我用的系统是windows,所以下载的是 v0.0.5-x86_64-pc-windows-msvc.zip

测试系统配置

系统: windows11 专业版

CPU: i5-10400F CPU @ 2.90GHz

内存:24G

硬盘: 1T机械硬盘 (至少要有500G的空余空间)

配置文件

参考配置文件: https://github.com/cncases/cases/blob/main/config.toml

复制代码
配置文件参考config.toml

db = "./rocksdb"  # path to store rocksdb
index_path ="./search_index"  # path to store index
index_with_full_text = false  # whether establish full-text index
addr = "127.0.0.1:8081" # If allow LAN access, change it to "0.0.0.0:port".

# The raw data path you downloaded from the torrent, and you must NOT unzip it. 注意路径
raw_data_path = "./"

将数据加载到 rocksdb 数据库中

运行 convert config.toml 程序。此过程会将原始数据放入 rocksdb 数据库中,数据库文件路径为 config.toml 中的 db 变量;转换后的数据大小约为 200G,转换可能会花费数小时的时间;如果中途中断,再次运行会从中断处继续。

复制代码
$ ./convert.exe config.toml

系统资源占用情况

开始时间: 14:30

结束时间:17:00

一共两个半小时,根据个人系统配置高低有关系。

生成rocksdb目录有184G大小。

创建索引

运行 index config.toml 程序会将数据库中的数据创建索引,索引文件路径为 config.toml 中的 index_path 变量;如果中途中断,需要删除 index_path 中的文件,重新运行 index 程序;默认情况下,不会索引案件内容,索引大小约为 15.5G,可能会花费数小时的时间。如果需要索引案件内容,需要将index.toml中的 index_with_full_text 设置为 true,但是这会使索引文件增加到150G左右,索引时间也会增加到十几个小时。

复制代码
$ ./index.exe config.toml
复制代码
开始时间: 2024-01-30 09:07:18
结束时间: 2024-02-01 03:14:18

一共花费了70多个小时

生成search_index目录有15.4G大小。

运行搜索服务

运行 main config.toml 程序,用浏览器打开config.toml网址,即可搜索。

复制代码
$ ./main.exe config.toml
2024-02-01T05:38:57.369799Z  INFO main: listening on http://127.0.0.1:8081

浏览器访问: http://127.0.0.1:8081

访问截图

至此,开源项目搭建中国裁判文书网本地搜索WEB系统完成。

相关推荐
@PHARAOH7 分钟前
WHAT - Remix 入门和基本实践:理解两套产物
前端·remix
mayaairi44 分钟前
Vue2 生命周期完全指南:从创建到销毁的8个钩子函数
前端·javascript·vue.js
xy34532 小时前
axure9.0 如何打造一个计时器(简单版)
前端·ui·html·axure·原型·产品设计
IMPYLH2 小时前
HTML 的 <pre> 元素
前端·javascript·html
tsumikistep3 小时前
【前端】Vue + Axios 跨域问题实战:7070 代理转发 8080 + 401 报错分析(黑马外卖)
前端·javascript·vue.js
lichenyang4533 小时前
鸿蒙首页从等高商品 Grid 到双列瀑布流:同一张图也能做出小红书式浏览节奏
前端
里欧跑得慢3 小时前
Flutter主题与样式详解
前端·css·flutter·web
计算机魔术师3 小时前
TPU推理性价比翻50%,NVIDIA的护城河要见底了?
前端
IT_陈寒3 小时前
Python的多线程就是个假把式,我算是体验到了
前端·人工智能·后端
OpenTiny社区4 小时前
【直播分享】GenUI SDK 技术公开课第二讲 | GenuiChat 核心配置深度解析
前端·github