|
|
@@ -80,6 +80,8 @@ def parser():
|
|
|
p_select.add_argument('--repo-like', default=None, type=str)
|
|
|
p_select.add_argument('--file-like', default=None, type=str)
|
|
|
p_select.add_argument('--user-like', default=None, type=str)
|
|
|
+ p_select.add_argument('--user-regex', default=None, type=str)
|
|
|
+ p_select.add_argument('--user-overwrite', default=None, type=str)
|
|
|
p_select.set_defaults(func=select)
|
|
|
return p
|
|
|
|
|
|
@@ -188,9 +190,18 @@ def select(args: Namespace):
|
|
|
import sqlite3
|
|
|
import os
|
|
|
with sqlite3.connect(args.output) as db:
|
|
|
+ import re
|
|
|
+ def regexp(y, x, search=re.search):
|
|
|
+ return 1 if search(y, x) else 0
|
|
|
+ db.create_function('regexp', 2, regexp)
|
|
|
+
|
|
|
STMT = STMT_SELECT
|
|
|
ARGS = []
|
|
|
WHERE_VERB = "WHERE"
|
|
|
+ if args.user_regex:
|
|
|
+ STMT += " "+WHERE_VERB+" user.name REGEXP ? "
|
|
|
+ ARGS.append(args.user_regex)
|
|
|
+ WHERE_VERB = "AND"
|
|
|
if args.user_like:
|
|
|
STMT += " "+WHERE_VERB+" user.name LIKE ? "
|
|
|
ARGS.append(args.user_like)
|
|
|
@@ -205,8 +216,10 @@ def select(args: Namespace):
|
|
|
WHERE_VERB = "AND"
|
|
|
for i in db.execute(STMT + " ORDER BY time ASC", ARGS):
|
|
|
# print(i)
|
|
|
+ username = args.user_overwrite if args.user_overwrite else i[1]
|
|
|
+
|
|
|
path = os.path.join(i[3],i[4])
|
|
|
- print('|'.join((str(i[0]),i[1],i[2],path)))
|
|
|
+ print('|'.join((str(i[0]),username,i[2],path)))
|
|
|
|
|
|
def render(args: Namespace):
|
|
|
print(args)
|