Skip to content

Commit 30bedcd

Browse files
authored
Merge pull request #6 from repoog/open_ver
update: adjust arguments realize
2 parents 9aeeab8 + 37fc81d commit 30bedcd

File tree

1 file changed

+15
-36
lines changed

1 file changed

+15
-36
lines changed

GitPrey.py

Lines changed: 15 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
import re
1919
import time
2020
import imp
21-
import getopt
21+
import argparse
2222

2323
try:
2424
from config.Config import *
@@ -311,25 +311,6 @@ def is_keyword_valid(keyword):
311311
return False
312312

313313

314-
def is_level_valid(level):
315-
"""
316-
Verify search level config is valid
317-
:param level: Search level
318-
:returns: False if invalid, True if valid
319-
"""
320-
if isinstance(level, int) and level in range(1, 6):
321-
return True
322-
else:
323-
return False
324-
325-
326-
def usage():
327-
print 'USAGE:'
328-
print '\t-l\tSet level for searching within 1~5, default level is 1.'
329-
print '\t-k\tSet key words for searching projects.'
330-
print '\t-h\tShow help information.'
331-
exit()
332-
333314
if __name__ == "__main__":
334315
# Verify lxml module is installed
335316
try:
@@ -339,32 +320,30 @@ def usage():
339320
exit()
340321

341322
# Get command parameters for searching level and key words
342-
try:
343-
opts, args = getopt.getopt(sys.argv[1:], "hl:k:")
344-
if not opts:
345-
usage()
346-
except getopt.GetoptError:
347-
usage()
323+
parser = argparse.ArgumentParser(description="Searching sensitive file and content in GitHub.")
324+
parser.add_argument("-l", "--level", type=int, choices=range(1, 6), default=1, metavar="level",
325+
help="Set level for searching within 1~5, default level is 1.")
326+
parser.add_argument("-k", "--keywords", metavar="keywords", required=True,
327+
help="Set key words for searching projects.")
328+
parser.add_argument("-u", "--user", metavar="username", required=True,
329+
help="Execution user email for notifying searching results.")
330+
args = parser.parse_args()
348331

349332
keyword_string = ""
350333
execution_user = ""
351-
for op, value in opts:
352-
if op == '-l':
353-
SEARCH_LEVEL = int(value)
354-
elif op == '-k':
355-
keyword_string = value
356-
elif op == '-h':
357-
usage()
334+
if args.level:
335+
SEARCH_LEVEL = args.level
336+
if args.keywords:
337+
keyword_string = args.keywords
338+
if args.user:
339+
execution_user = args.user
358340

359341
# Print GitPrey digital logo and version information.
360342
info_print(GitPrey.__doc__)
361343

362344
if not is_keyword_valid(keyword_string):
363345
error_print("[!_!]ERROR INFO: The key words you input are invalid. Please input again.")
364346
exit()
365-
elif not is_level_valid(SEARCH_LEVEL):
366-
error_print("[!_!]ERROR INFO: Searching level must in 1~5.")
367-
exit()
368347
else:
369348
keyword_output = "[^_^]START INFO: The key words for searching are: {keyword}"
370349
info_print(keyword_output.format(keyword=keyword_string))

0 commit comments

Comments
 (0)