feature: search dojinshis

This commit is contained in:
ricterz 2015-05-08 17:27:41 +08:00
parent 2f616e0fc6
commit e91457889e
3 changed files with 21 additions and 10 deletions

View File

@ -16,6 +16,7 @@ def banner():
def cmd_parser(): def cmd_parser():
parser = OptionParser() parser = OptionParser()
parser.add_option('--search', type='string', dest='keyword', action='store', help='keyword searched') parser.add_option('--search', type='string', dest='keyword', action='store', help='keyword searched')
parser.add_option('--tag', type='string', dest='tag', action='store', help='dojinshi tag')
parser.add_option('--download', dest='is_download', action='store_true', help='download dojinshi or not') parser.add_option('--download', dest='is_download', action='store_true', help='download dojinshi or not')
parser.add_option('--id', type='int', dest='id', action='store', help='dojinshi id of nhentai') parser.add_option('--id', type='int', dest='id', action='store', help='dojinshi id of nhentai')
parser.add_option('--ids', type='str', dest='ids', action='store', help='dojinshi id set, e.g. 1,2,3') parser.add_option('--ids', type='str', dest='ids', action='store', help='dojinshi id set, e.g. 1,2,3')
@ -34,13 +35,13 @@ def cmd_parser():
parser.print_help() parser.print_help()
raise SystemExit raise SystemExit
if args.keyword:
logger.critical(u'并没有做这个功能_(:3」∠)_')
raise SystemExit
if args.id: if args.id:
args.ids = (args.id, ) if not args.ids else args.ids args.ids = (args.id, ) if not args.ids else args.ids
if args.tag:
logger.critical(u'并没有做这个功能_(:3」∠)_')
raise SystemExit
if not args.keyword and not args.ids: if not args.keyword and not args.ids:
parser.print_help() parser.print_help()
raise SystemExit raise SystemExit

View File

@ -48,7 +48,12 @@ def dojinshi_parser(id):
return dojinshi return dojinshi
def search_parser(data): def search_parser(keyword):
logger.debug('Searching dojinshis of keyword %s' % keyword)
return []
def tag_parser(tag):
pass pass

View File

@ -1,6 +1,6 @@
#coding: utf-8 #coding: utf-8
from hentai.cmdline import cmd_parser, banner from hentai.cmdline import cmd_parser, banner
from hentai.parser import dojinshi_parser from hentai.parser import dojinshi_parser, search_parser
from hentai.dojinshi import Dojinshi from hentai.dojinshi import Dojinshi
from hentai.downloader import Downloader from hentai.downloader import Downloader
from hentai.logger import logger from hentai.logger import logger
@ -16,13 +16,18 @@ def main():
logger.log(15, 'nHentai: あなたも変態。 いいね?') logger.log(15, 'nHentai: あなたも変態。 いいね?')
dojinshi_list = [] dojinshi_list = []
if options.ids:
for id in options.ids: if options.keyword:
dojinshi_ids = search_parser(options.keyword)
else:
dojinshi_ids = options.ids
if dojinshi_ids:
for id in dojinshi_ids:
dojinshi_info = dojinshi_parser(id) dojinshi_info = dojinshi_parser(id)
dojinshi_list.append(Dojinshi(**dojinshi_info)) dojinshi_list.append(Dojinshi(**dojinshi_info))
elif options.keyword:
pass
else: else:
logger.log(15, 'Nothing has been done.')
raise SystemExit raise SystemExit
if options.is_download: if options.is_download: