-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathregs_v2.py
211 lines (187 loc) · 16.9 KB
/
regs_v2.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
import re
num_list = {
"〇": 0,
"\uff2f": 0,
"\u3007": 0,
"\u25cb": 0,
"\uff10": 0,
"\u039f": 0,
'零': 0,
"O": 0,
"0": 0,
"一": 1,
"元": 1,
"1": 1,
"二": 2,
"2": 2,
"两": 2,
'三': 3,
'3': 3,
'四': 4,
'4': 4,
'五': 5,
'5': 5,
'六': 6,
'6': 6,
'七': 7,
'7': 7,
'八': 8,
'8': 8,
'九': 9,
'9': 9,
'十': 10,
'百': 100,
'千': 1000,
'万': 10000
}
num_str = ""
key_word_list = ["第", "条", "款", "、", ",", "(", ")", "之"]
for x in num_list:
num_str = num_str + x
key_word_str = num_str
for x in key_word_list:
key_word_str = key_word_str + x
def get_number_from_string(s):
for x in s:
if not (x in num_list):
print(s)
gg
value = 0
try:
value = int(s)
except ValueError:
nowbase = 1
addnew = True
for a in range(len(s) - 1, -1, -1):
if s[a] == '十':
if nowbase >= 10000:
nowbase = 100000
else:
nowbase = 10
addnew = False
elif s[a] == '百':
if nowbase >= 10000:
nowbase = 1000000
else:
nowbase = 100
addnew = False
elif s[a] == '千':
if nowbase >= 10000:
nowbase = 10000000
else:
nowbase = 1000
addnew = False
elif s[a] == '万':
nowbase = 10000
addnew = False
else:
value = value + nowbase * num_list[s[a]]
nowbase = nowbase * 10
addnew = True
if not (addnew):
value += nowbase
return value
def format_string(s):
return s.replace("b", "").replace("\t", " ").replace("t", "")
def get_one_reason(content, rex):
pos = rex.start()
law_name = rex.group(1)
nows = content
result = []
p = pos
while nows[p] != "》":
p += 1
while nows[p] != "第":
p += 1
tiao_num = 0
last_added = True
zhiyi = 0
pre_list = []
while p < len(nows) - 1 and nows[p] != "《":
nowp = p + 1
now_list = []
while nows[nowp] in num_list.keys():
nowp += 1
if p + 1 == nowp:
p += 1
continue
now_list.append(get_number_from_string(nows[p + 1:nowp]))
while p < len(nows) - 1 and nows[nowp] == "、":
p = nowp
nowp = p + 1
while nowp < len(nows) - 1 and nows[nowp] in num_list.keys():
nowp += 1
now_list.append(get_number_from_string(nows[p + 1:nowp]))
if nows[nowp] == "条":
if not (last_added):
for num in pre_list:
result.append((law_name, num, 0, zhiyi))
pre_list = []
if len(now_list) == 1:
tiao_num = now_list[0]
if len(nows) > nowp + 2 and nows[nowp + 1] == "之" and nows[nowp + 2] in num_list:
zhiyi = num_list[nows[nowp + 2]]
nowp += 2
else:
zhiyi = 0
# result.append((law_name, tiao_num, 0, zhiyi))
last_added = False
elif nows[nowp] == "款":
last_added = True
if len(pre_list) > 1 and len(now_list) > 1:
return False
for num in now_list:
result.append((law_name, tiao_num, num, zhiyi))
else:
if not (last_added):
for num in pre_list:
result.append((law_name, num, 0, zhiyi))
now_list.pop()
pass
p = nowp
pre_list = []
for x in now_list:
pre_list.append(x)
if nows[p + 2] == '款':
continue
while p < len(nows) and nows[p] != '第' and nows[p] != "《":
p += 1
if not last_added:
result.append((law_name, tiao_num, 0, zhiyi))
return result
def parse_name_of_law(data):
'''
parse non critical law, with their names
'''
rex = re.compile(r"《([^《》\s]*?)》第[" + key_word_str + r"]*[条款]")
s = format_string(data["document"]["content"])
result = rex.finditer(s)
result_set = set()
for x in result:
try:
y = get_one_reason(s, x)
except:
continue
if not y:
continue
for z in y:
result_set.add(z)
result_set = list(result_set)
result_set.sort()
return result_set
if __name__ == '__main__':
# content = '江苏省泰兴市人民法院b执 行 裁 定 书b(2014)泰执字第3339号b申请执行人江苏泰兴农村商业银行股份有限公司刘陈支行。b负责人钱卫华,行长。b被执行人顾兴堂。b被执行人夏志萍。b关于江苏泰兴农村商业银行股份有限公司刘陈支行与顾兴堂、夏志萍金融借款合同纠纷一案,本院于2014年6月20日作出的(2013)泰商初字第1220号民事判决书已发生法律效力。被执行人顾兴堂、夏志萍未履行生效法律文书确定的义务,权利人于2014年11月11日向本院申请执行。b本案在执行过程中,经向中国工商银行江苏省分行、中国银行江苏省分行、江苏银行、南京银行、邮政储蓄银行、中国建设银行江苏省分行、中国交通银行江苏省分行、中国农业银行江苏省分行、江苏泰兴农村商业银行等金融机构查询,未发现被执行人有可供执行的存款信息;被执行人顾兴堂所有的苏M×××××汽车被本院查封,但不知该车下落,经对泰兴市公安局车辆管理所查询,未发现被执行人有其他机动车登记信息;经对泰兴市房产管理局查询,未发现被执行人有房产登记信息。本院已将被执行人纳入失信被执行人名单,申请执行人向本院申请终结本次执行程序。b本院认为,除苏M×××××汽车外,被执行人暂无财产可供执行,而苏M×××××汽车不知下落,无法处置,本案暂时执行困难,申请执行人向本院申请终结本次执行程序是其真实意思表示,本次执行程序应予终结。依照《中华人民共和国民事诉讼法》第一百五十四条第一款第(十一)项、第二百五十八条、最高人民法院《关于适用〈中华人民共和国民事诉讼法〉的解释》第五百一十九条之规定,裁定如下:b本院(2013)泰商初字第1220号民事判决书本次执行程序终结。b终结执行后,如发现被执行人确有可供执行的财产,申请执行人可向本院重新申请强制执行。b本裁定送达后即发生法律效力。b执行员\u3000\u3000陈纪平b二〇一五年三月三十日b书记员\u3000\u3000卢月华'
# rex = re.compile(r"《([^《》\s]*?)》第[" + key_word_str + r"]*[条款]")
# results = rex.finditer(content)
# for result in results:
# r = get_one_reason(content, result)
# print(r)
# a = '广东省揭阳市揭东区人民法院b刑 事 判 决 书b(2016)粤5203刑初96号b公诉机关揭阳市揭东区人民检察院。b被告人林某甲,男,1986年2月13日出生于广东省揭西县,汉族,小学文化,司机,住揭阳市揭西县。因本案于2015年12月10日被刑事拘留,2015年12月25日被逮捕。现押于揭阳市揭东区看守所。b被告人张某甲,男,1988年8月19日出生于福建省云宵县,汉族,初中文化,司机,住漳州市云宵县。因本案于2015年12月10日被刑事拘留,2015年12月25日被逮捕。现押于揭阳市揭东区看守所。b揭阳市揭东区人民检察院以揭东检公诉刑诉(2016)97号起诉书指控被告人林某甲、张某甲犯非法经营罪,于2016年3月9日向本院提起公诉。本院依法适用简易程序并组成合议庭,公开开庭审理了本案。揭阳市揭东区人民检察院指派代理检察员黄素玲出庭支持公诉,被告人林某甲、张某甲到庭参加诉讼。现已审理终结。b公诉机关指控,2015年11月上旬开始,被告人林某甲明知系假冒香烟,仍受雇于”阿杰”(姓名、地址不详,另案处理),以每件人民币(下同)50元的工钱,多次为其运载假冒香烟。2015年12月上旬开始,被告人张某甲在明知系假冒香烟,仍受雇于”二哥”(姓名、地址不详,另案处理),每次以每车1200元的工钱,从福建省漳州市云宵县为”二哥”运载假冒香烟至揭阳市揭东区曲溪街道龙港路中段交付给被告人林某甲。2015年12月10日凌晨,被告人张某甲驾驶1辆悬挂车牌号为粤V5XXXX白色金杯牌面包车与驾驶另1辆面包车的1名中年男子(姓名、地址不详,另案处理)从福建省漳州市云宵县运载假冒香烟至揭阳市揭东区曲溪街道龙港路中段交付给被告人林某甲。当2名被告人正在转移假冒香烟至被告人林某甲驾驶的1辆悬挂车牌号为粤V7XXXX五十铃牌厢式货车时被公安机关查获,现场扣押不同品牌的涉嫌假冒香烟1批(总价值396611元,其中在被告人林某甲所驾驶的货车上查获的香烟价值186077元,在被告人张某甲面包车上查获的香烟价值210534元),中年男子驾驶面包车乘机逃跑。经鉴定,现场扣押的香烟均为假冒注册商标且伪劣卷烟。b对上述事实,被告人林某甲、张某甲在开庭审理过程均亦无异议,并有扣押、移交物品清单,辨认笔录及照片,现场勘查材料,揭阳市揭东区烟草专卖局估价意见,广东省质量监督烟草检验站检验报告,被告人林某甲、张某甲的身份证实材料,公安机关的抓获经过等证据予以证明,足资认定。b本院认为,被告人林某甲、张某甲违反国家烟草专卖管理法规,非法经营假冒注册商标且伪劣卷烟,其中被告人林某甲经营额在25万元以上,情节特别严重,被告人张某甲经营额在5万元以上,情节严重,其行为均已构成非法经营罪。公诉机关指控被告人林某甲、张某甲所犯的罪名成立,本院予以支持。被告人林某甲、张某甲在共同犯罪中均起次要作用,是从犯,依法应对被告人林某甲减轻处罚,对被告人张某甲从轻处罚。被告人林某甲、张某甲均能坦白自己的罪行,依法均可予从轻处罚。公诉机关建议以非法经营罪对被告人林某甲判处二年六个月以上三年六个月以下有期徒刑,以非法经营罪对被告人张某甲判处一年六个月以上二年六个月以下有期徒刑,被告人林某甲、张某甲均对公诉机关的量刑建议没有异议。本院根据被告人林某甲、张某甲的犯罪事实,犯罪的性质、情节等,在量刑时依法对被告人林某甲、张某甲罚当其罪。依照《中华人民共和国刑法》第二百二十五条第(一)项,第二十七条,第六十七条第三款,第六十四条,《最高人民法院、最高人民检察院〈关于办理非法生产、销售烟草专卖品等刑事案件具体应用法律若干问题的解释〉》第一条第五款、第三条之规定,判决如下:b一、被告人林某甲犯非法经营罪,判处有期徒刑三年,并处罚金人民币二万元。罚金限于本判决生效之日起三十日内缴纳。b(刑期从判决执行之日起计算。判决执行以前先行羁押的,羁押一日折抵刑期一日,即自2015年12月10日起至2018年12月9日止。)b二、被告人张某甲犯非法经营罪,判处有期徒刑一年六个月,并处罚金人民币一万五千元。罚金限于本判决生效之日起三十日内缴纳。b(刑期从判决执行之日起计算。判决执行以前先行羁押的,羁押一日折抵刑期一日,即自2015年12月10日起至2017年6月9日止。)b三、本案已扣押林某甲的作案工具红色直板”LX”牌、金色直板三星牌手机各一部、赃款人民币八百六十五元,张某甲的作案工具黑色翻盖、小米手机各一部、赃款人民币三千六百元,均予以没收,上缴国库。b如不服本判决,可在接到判决书的第二日起十日内,通过本院或者直接向揭阳市中级人民法院提出上诉。书面上诉的,应交上诉状正本一份,副本二份。b审 判 长 史卓辉b人民陪审员 江建鑫b人民陪审员 谢丹阳b二〇一六年三月二十二日b代书 记员 陈晓敏b附相关法律条文b《中国人民共和国刑法》b第二十七条在共同犯罪中起次要或者辅助作用的,是从犯。b对于从犯,应当从轻、减轻处罚或者免除处罚。b第六十四条犯罪分子违法所得的一切财物,应当予以追缴或者责令退赔;对被害人的合法财产,应当及时返还;违禁品和供犯罪所用的本人财物,应当予以没收。没收的财物和罚金,一律上缴国库,不得挪用和自行处理。b第六十七条犯罪以后自动投案,如实供述自己的罪行的,是自首。对于自首的犯罪分子,可以从轻或者减轻处罚。其中,犯罪较轻的,可以免除处罚。b被采取强制措施的犯罪嫌疑人、被告人和正在服刑的罪犯,如实供述司法机关还未掌握的本人其他罪行的,以自首论。b犯罪嫌疑人虽不具有前两款规定的自首情节,但是如实供述自己罪行的,可以从轻处罚;因其如实供述自己罪行,避免特别严重后果发生的,可以减轻处罚。b第二百二十五条违反国家规定,有下列非法经营行为之一,扰乱市场秩序,情节严重的,处五年以下有期徒刑或者拘役,并处或者单处违法所得一倍以上五倍以下罚金;情节特别严重的,处五年以上有期徒刑,并处违法所得一倍以上五倍以下罚金或者没收财产:b(一)未经许可经营法律、行政法规规定的专营、专卖物品或者其他限制买卖的物品的;b(二)买卖进出口许可证、进出口原产地证明以及其他法律、行政法规规定的经营许可证或者批准文件的;b(三)未经国家有关主管部门批准非法经营证券、期货、保险业务的,或者非法从事资金支付结算业务的;b(四)其他严重扰乱市场秩序的非法经营行为。'
a = '襄阳市樊城区人民法院b刑 事 判 决 书b(2016)鄂0606刑初328号b公诉机关襄阳市樊城区人民检察院。b被告人蔡某某,男,1970年12月18日出生,汉族,住襄阳市。b襄阳市樊城区人民检察院以鄂樊城检刑诉(2016)298号起诉书指控被告人蔡某某犯危险驾驶罪,于2016年7月22日向本院提起公诉。本院受理后,依法组成合议庭,公开开庭审理了本案。襄阳市樊城区人民检察院指派检察员张汉军出庭支持公诉,被告人蔡某某到庭参加了诉讼。现已审理终结。b经审理查明,2016年5月12日21时许,被告人蔡某某酒后驾驶长安牌轿车,由东向西行驶至襄阳市樊城区长征东路清河桥头时,被民警查获。b经襄阳市汇驰司法鉴定所司法鉴定,从送检的被告人蔡某某血液中检出“酒精”成分,含量为257.83mg/100ml,为醉酒驾车。b上述事实,被告人蔡某某在开庭审理过程中亦无异议,且有查获经过及取保侯审手续,受案登记表,身份证,驾驶人信息查询结果单,现场酒精检测报告,抽血登记表、鉴定意见书等证据证实,足以认定。b本院认为,被告人蔡某某违反道路交通运输管理法规,醉酒驾驶机动车辆上路行驶,其行为已构成危险驾驶罪。公诉机关指控罪名成立,本院予以支持。根据《最高人民法院、最高人民检察院、公安部关于办理醉酒驾驶机动车刑事案件适用法律若干问题的意见》第二条第(二)项的规定,依法应从重处罚。被告人蔡某某归案后认罪态度较好,可酌情从轻处罚。依照《中华人民共和国刑法》第一百三十三条之一第一款第(二)项、第五十二条、第五十三条第一款之规定,判决如下:b被告人蔡某某犯危险驾驶罪,判处拘役四个月,并处罚金人民币四千元(刑期从判决执行之日起计算。判决执行以前先行羁押的,羁押一日折抵刑期一日。罚金限于本判决生效后十日内缴纳)。b如不服本判决,可在接到判决书的第二日起十日内,通过本院或者直接向湖北省襄阳市中级人民法院提出上诉。书面上诉的,应提交上诉状正本一份,副本二份。b审判长 李建平b审判员 张 挺b审判员 冯少杰b二〇一六年八月二十六日b书'
b = {'document': {'content': a, }, }
result = parse_name_of_law(b)
result = list(result)
result.sort()
print('--------------------------\n')
for i in result:
print(i)