forked from frictionlessdata/frictionless-py
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathcustom_check.py
23 lines (20 loc) · 897 Bytes
/
custom_check.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
from pprint import pprint
from goodtables import Inspector, check
@check('unicode-found', type='structure', context='body', after='duplicate-row')
def unicode_found(errors, columns, row_number, state=None):
for column in columns:
if len(column) == 4:
if column['value'] == '中国人':
message = 'Row {row_number} has unicode in column {column_number}'
message = message.format(
row_number=row_number,
column_number=column['column-number'])
errors.append({
'code': 'unicode-found',
'message': message,
'row-number': row_number,
'column-number': column['column-number'],
})
inspector = Inspector(custom_checks=[unicode_found])
report = inspector.inspect('data/valid.csv')
pprint(report)