def get_args(): global VERBOSE global verbose argparser = argparse.ArgumentParser() argparser.add_argument('-i', '--id', help='女優ID', nargs='+') argparser.add_argument('-p', '--path', help='DBのパス') argparser.add_argument('-s', '--selfcheck', help='最終リリースを自身で再チェック', action='store_true') argparser.add_argument('-v', '--verbose', help='デバッグ用情報を出力する', action='count', default=0) args = argparser.parse_args() VERBOSE = args.verbose verbose = libssw.def_verbose(VERBOSE, OWNNAME) verbose('verbose mode on') return args
def get_args(): global VERBOSE global verbose global FOLLOW_RDR global COPY global BROWSER argparser = argparse.ArgumentParser( formatter_class=argparse.RawDescriptionHelpFormatter, description='無修正系サイトのURLから素人系総合wiki用ウィキテキストを作成する', epilog='対応サイト: JAPORN.TV, 一本道, カリビアンコム(含プレミアム), HEYZO, ' 'HEY動画, Tokyo-Hot(my.tokyo-hot.com), パコパコママ, 天然むすめ,MGS動画,FC2コンテンツマーケット' '熟女倶楽部, 人妻パラダイス, 人妻切り') argparser.add_argument('url', help='作品ページのURL', nargs='+', metavar='URL') argparser.add_argument('-f', '--disable-follow-redirect', help='ページのリダイレクト先を取得しない', dest='follow_rdr', action='store_false', default=True) argparser.add_argument('-c', '--copy', help='作成したウィキテキストをクリップボードへコピーする', action='store_true') argparser.add_argument('-b', '--browser', help='生成後、wikiのページをウェブブラウザで開く', action='store_true') argparser.add_argument('-v', '--verbose', help='デバッグ用情報を出力する', action='count', default=0) argparser.add_argument('-V', '--version', help='バージョン情報を表示して終了する', action='version', version='%(prog)s {}'.format(__version__)) args = argparser.parse_args() VERBOSE = args.verbose verbose = libssw.def_verbose(VERBOSE, libssw.ownname(__file__)) verbose('verbose mode on') FOLLOW_RDR = args.follow_rdr COPY = args.copy BROWSER = args.browser return args
def get_args(): global VERBOSE global verbose argparser = argparse.ArgumentParser( description='Hunter、Apache、ATOMの無駄に長いタイトル用プリプロセッサ') argparser.add_argument('start', help='開始ID') argparser.add_argument('end', help='終了ID', nargs='?', default='') argparser.add_argument('-m', '--maker', help='メーカー', choices=('hunter', 'atom', 'apache')) argparser.add_argument('-o', '--out', help='ファイルに出力', metavar='FILE') writemode = argparser.add_mutually_exclusive_group() writemode.add_argument('-r', '--replace', help='出力ファイルと同名のファイルがあったら上書きする', action='store_true') writemode.add_argument('-a', '--append', help='出力ファイルと同名のファイルがあったらそれに追加する', action='store_true') argparser.add_argument('--tee', help='ファイルとともに標準出力にも出力する', action='store_true') argparser.add_argument('-v', '--verbose', help='デバッグ用情報を出力する', action='count', default=0) argparser.add_argument('-V', '--version', help='バージョン情報を表示して終了する', action='version', version='%(prog)s {}'.format(__version__)) args = argparser.parse_args() verbose.verbose = VERBOSE = args.verbose VERBOSE = args.verbose verbose = libssw.def_verbose(VERBOSE, libssw.ownname(__file__)) verbose('Verbose mode on') return args
def get_args(): global VERBOSE global verbose argparser = argparse.ArgumentParser( description='素人系総合Wikiのページ移動用リンクの張替え') argparser.add_argument('moves_to', help='移動先ページ名', metavar='MOVES_TO') argparser.add_argument('-i', '--input', help='ウィキテキストを格納したファイル(未指定で標準入力から入力)', metavar='INPUT') argparser.add_argument('-o', '--out', help='出力ファイル(未指定で標準出力へ出力)', metavar='OUTPUT') argparser.add_argument('-r', '--replace', help='出力ファイルと同名のファイルがあった場合上書きする', action='store_true') argparser.add_argument('-d', '--diff', help='データ修正前と後の差分をウェブブラウザで表示する', action='store_true') argparser.add_argument('-v', '--verbose', help='デバッグ用情報を出力する', action='count', default=0) argparser.add_argument('-V', '--version', help='バージョン情報を表示して終了する', action='version', version='%(prog)s {}'.format(__version__)) args = argparser.parse_args() VERBOSE = args.verbose verbose = libssw.def_verbose(VERBOSE, libssw.ownname(__file__)) verbose('verbose mode on') return args
def _get_args(argv, p_args): """ コマンドライン引数の解釈 """ global _VERBOSE global _AUTOMODIFY global _verbose argparser = _argparse.ArgumentParser( description='DMMのURLから素人系総合wiki用ウィキテキストを作成する') argparser.add_argument('url', help='DMMの作品ページのURL', nargs='?', metavar='URL') argparser.add_argument('-a', '--actress', help='出演者 (DMMページ内のものに追加する)', nargs='+', default=()) argparser.add_argument('-n', '--number', help='未知の出演者がいる場合の総出演者数 (… ほか計NUMBER名)', type=int, default=0) list_page = argparser.add_mutually_exclusive_group() list_page.add_argument('-s', '--series', help='シリーズ一覧へのリンクを追加(DMM上のものを置き換え)', default=getattr(p_args, 'series', None)) list_page.add_argument('-l', '--label', help='レーベル一覧へのリンクを追加(DMM上のものを置き換え)', default=getattr(p_args, 'label', None)) list_page.add_argument('--hide-list', help='一覧ページへのリンクを追加しない', action='store_true', default=getattr(p_args, 'hide_list', False)) argparser.add_argument('-t', '--table', help='一覧ページ用の表形式ウィキテキストを作成する, 2個以上指定すると両方作成する', action='count', default=getattr(p_args, 'table', 0)) argparser.add_argument('--pid', help='作品の品番を直接指定(-t/-tt 指定時用)') argparser.add_argument('--subtitle', help='タイトルの副題を直接指定(-t/-tt 指定時用)') argparser.add_argument('--as-series', help='タイトルではなく副題で作成(-t/-tt 指定時用)', action='store_true') argparser.add_argument('--note', help='備考(表形式ではNOTEカラム)として出力する文字列', nargs='+', metavar='DATA', default=getattr(p_args, 'note', [])) argparser.add_argument('-d', '--add-dir-col', help='DIRECTORカラムを出力する (-t/-tt 指定時用)', dest='dir_col', action='store_true', default=getattr(p_args, 'dir_col', False)) argparser.add_argument('--add-column', help='表形式ヘッダに任意のカラムを追加する (-t/-tt 指定時のみ)', nargs='+', metavar='COLUMN:DATA', default=getattr(p_args, 'add_column', [])) # 外部からデータ補完 argparser.add_argument('--join-tsv', help='テキストファイル(TSV)でデータを補完する', nargs='+', metavar='FILE') argparser.add_argument('--join-wiki', help='素人系総合Wikiのウィキテキスト(表形式)でデータを補完する', nargs='+', metavar='FILE') argparser.add_argument('--join-html', help='素人系総合Wikiの一覧ページを読み込んで補完する', nargs='+', metavar='URL/HTML') argparser.add_argument('-f', '--disable-follow-redirect', help='ページのリダイレクト先をチェックしない', dest='follow_rdr', action='store_false', default=getattr(p_args, 'follow_rdr', True)) argparser.add_argument('--disable-check-rental', help='レンタル先行レーベルでもレンタル版のリリースをチェックしない', dest='check_rental', action='store_false', default=getattr(p_args, 'check_rental', True)) argparser.add_argument('--disable-check-related', help='他メディアやサービスの情報収集を行わない', dest='check_rltd', action='store_false', default=getattr(p_args, 'check_rltd', True)) argparser.add_argument('--disable-check-listpage', help='Wiki上の実際の一覧ページを探さない', dest='check_listpage', action='store_false', default=getattr(p_args, 'check_listpage', True)) argparser.add_argument('--disable-longtitle', help='アパッチ、SCOOPの長いタイトルを補足しない', dest='longtitle', action='store_false', default=getattr(p_args, 'longtitle', True)) argparser.add_argument('--fastest', help='ウェブにアクセスするあらゆる補助処理を行わない', action='store_true', default=getattr(p_args, 'fastest', False)) argparser.add_argument('--recheck', help='キャッシュしているリダイレクト先を強制再チェック', action='store_true', default=getattr(p_args, 'recheck', False)) argparser.add_argument('--disable-modify-title', help='タイトルの自動調整を無効にする', action='store_false', default=True) argparser.add_argument('--disable-strip-oldname', help='出演者の旧芸名の自動除去を無効にする', action='store_false', dest='autostrip', default=True) argparser.add_argument('-c', '--copy', help='作成したウィキテキストをクリップボードへコピーする(pyperclipが必要)', action='store_true') argparser.add_argument('-b', '--browser', help='生成後、wikiのページをウェブブラウザで開く', action='store_true') argparser.add_argument('-C', '--clear-cache', help='プログラム終了時にキャッシュをクリアする', action='store_true', default=False) argparser.add_argument('--cache-info', help='キャッシュのパスとファイルサイズの合計を出力して終了する', action='store_true') argparser.add_argument('-v', '--verbose', help='デバッグ用情報を出力する', action='count', default=getattr(p_args, 'verbose', 0)) argparser.add_argument('-V', '--version', help='バージョン情報を表示して終了する', action='version', version='%(prog)s {}'.format(__version__)) args = argparser.parse_args(argv) if args.verbose and __name__ != '__main__': args.verbose -= 1 _VERBOSE = args.verbose _verbose = _libssw.def_verbose(_VERBOSE, _libssw.ownname(__file__)) _verbose('verbose mode on') # verbose モードでなければ無視される if args.cache_info: _libssw.cache_info() # キャッシュディレクトリの削除 if args.clear_cache: _libssw.clear_cache() if args.fastest: for a in ('follow_rdr', 'check_rental', 'check_listpage', 'check_rltd', 'longtitle'): setattr(args, a, False) _AUTOMODIFY = args.disable_modify_title _libssw.RECHECK = args.recheck _verbose('args: ', args) return args
def get_args(argv): """コマンドライン引数の解釈""" global VERBOSE global verbose argparser = argparse.ArgumentParser(description='DMMから検索して作品一覧を作成する') # 処理タイプ retrieval = argparser.add_mutually_exclusive_group() retrieval.add_argument('-A', '--actress', help='女優IDで一覧取得', action='store_const', dest='retrieval', const='actress') retrieval.add_argument('-S', '--series', help='シリーズIDで一覧取得', action='store_const', dest='retrieval', const='series') retrieval.add_argument('-L', '--label', help='レーベルIDで一覧取得', action='store_const', dest='retrieval', const='label') retrieval.add_argument('-K', '--maker', help='メーカーIDで一覧取得', action='store_const', dest='retrieval', const='maker') retrieval.add_argument('-U', '--url', help='していたURLページからそのまま取得', action='store_const', dest='retrieval', const='url') # ファイル入力 from_file = argparser.add_mutually_exclusive_group() from_file.add_argument('-i', '--from-tsv', help='TSVファイルから入力', action='store_true') from_file.add_argument('-w', '--from-wiki', help='素人総合wikiのウィキテキスト(表形式)から入力', action='store_true') from_file.add_argument('--cid', help='DMM上の品番(cid)指定で取得(ページが見つからなくてもリンクは作成する)', action='store_true') from_file.add_argument('--cid-l', help='DMM上の品番(cid)指定で取得(ページが見つからなければリンクは作成しない)', action='store_true') argparser.add_argument('keyword', help='検索キーワード、ID、品番、URL、またはファイル名', metavar='KEYWORD', nargs='*') # ファイル出力 argparser.add_argument('-o', '--out', help='ファイルに出力 (未指定時は標準出力へ出力)', metavar='FILE') argparser.add_argument('-r', '--replace', help='出力ファイルと同名のファイルがあった場合上書きする', action='store_true') # 出力形式 table = argparser.add_mutually_exclusive_group() table.add_argument('-t', '--table', help='一覧ページ用の表形式でウィキテキストを作成する, ' '2個以上指定すると両方作成する', action='count', default=0) table.add_argument('--tsv', help='ウィキテキストを生成せず、タブ区切りの一覧を出力する', action='store_false', dest='wikitext', default=True) # データ取得先 argparser.add_argument('--service', help='一覧を取得するサービスを指定する (デフォルト: ' 'KEYWORD にURLが与えられればそれから自動判定、' 'それ以外なら dvd)', choices=('dvd', 'rental', 'video', 'ama', 'all')) # 作品データの除外基準 argparser.add_argument('-m', '--disable-omit', help='IVを除外しない、2個指定すると総集編も、' '3個指定するとアウトレット版も、' '4個指定すると限定盤も除外しない', dest='no_omit', action='count', default=0) # データ作成範囲基準 id_type = argparser.add_mutually_exclusive_group() id_type.add_argument('--start-pid', help='データ作成開始品番(例:JMD-112)', metavar='PID', default='') id_type.add_argument('--start-pid-s', help='データ作成開始品番(厳密にチェック)', metavar='PID', default='') id_type.add_argument('--start-cid', help='データ作成開始品番(DMM上の品番, 例:15jmd112so)', metavar='CID', default='') id_type.add_argument('-e', '--last-pid', help='作成済み作品情報の最後の品番', metavar='PID', default='') id_type.add_argument('--last-cid', help='作成済み作品情報の最後の品番(DMM上の品番)', metavar='CID', default='') argparser.add_argument('--start-date', help='データ作成対象開始リリース日', metavar='YYYYMMDD') argparser.add_argument('--existings-html', help='Wikiの一覧ページに既にある作品の情報は作成しない', nargs='+', metavar='URL/HTML') filters = argparser.add_mutually_exclusive_group() filters.add_argument('--filter-pid', help='品番(pid)がパターン(正規表現)とマッチしたものだけ作成', metavar='PATTERN') filters.add_argument('--filter-pid-s', help='品番(pid)がパターン(正規表現)とマッチしたものだけ作成(厳密にチェク)', metavar='PATTERN') filters.add_argument('--filter-cid', help='DMM上の品番(cid)がパターン(正規表現)とマッチしたものだけ作成', metavar='PATTERN') filters.add_argument('--filter-title', help='作品名がパターン(正規表現)とマッチしたものだけ作成', metavar='PATTERN') argparser.add_argument('--not-in-series', '--n-i-s', help='シリーズに所属していないもののみ作成(-K/-L/-U 指定時)', action='store_true', dest='n_i_s') argparser.add_argument('--row', help='先頭行のみなし行開始位置 (-t/-tt 指定時のみ)', type=int, default=0) # --row のデフォルトは後で決定 argparser.add_argument('--pages-last', help='データ収集ページ数(最新からPAGEページ分を収集)', type=int, default=0, metavar='PAGE') # 外部からデータ補完 argparser.add_argument('--join-tsv', help='テキストファイル(TSV)でデータを補完する', nargs='+', metavar='FILE') argparser.add_argument('--join-wiki', help='素人系総合Wikiのウィキテキスト(表形式)でデータを補完する', nargs='+', metavar='FILE') argparser.add_argument('--join-html', help='素人系総合Wikiの一覧ページを読み込んで補完する', nargs='+', metavar='URL/HTML') argparser.add_argument('--hunter', help='--join-*オプションを指定したときに作品タイトルは補完ファイルの' 'ものを採用する(Hunter系用)', action='store_true') # ソート基準 argparser.add_argument('--sort-key', help='並び替えキー項目', choices=('release', 'pid', 'title')) argparser.add_argument('--note', help='エントリの最後かNOTEカラムにデータを追加する', nargs='+', metavar='DATA', default=[]) # 表形式出力装飾 argparser.add_argument('-d', '--add-dir-col', help='DIRECTORカラムを追加する (-t/-tt 指定時のみ)', dest='dir_col', action='store_true') argparser.add_argument('--add-column', help='表に任意のカラムとデータを追加する (-t/-tt 指定時のみ)', nargs='+', metavar='COLUMN:DATA', default=[]) # 一覧ページへのリンク追加 list_page = argparser.add_mutually_exclusive_group() list_page.add_argument('-s', '--series-link', help='女優ページ形式でシリーズ一覧へのリンクを置き換え', dest='series') list_page.add_argument('-l', '--label-link', help='女優ページ形式でレーベル一覧へのリンクを置き換え', dest='label') list_page.add_argument('--hide-list', help='女優ページ形式で一覧ページへのリンクを追加しない', action='store_true', default=False) argparser.add_argument('--linklabel', help='一覧ページへのリンクの表示名を置き換える') # 品番・副題など自動調整設定 argparser.add_argument('--pid-regex', help='品番自動生成のカスタム正規表現 (-t/-tt/-w 指定時のみ)', nargs=2, metavar=('PATTERN', 'REPL')) argparser.add_argument('--subtitle-regex', help='副題自動生成のカスタム正規表現 (-t/-tt 指定時のみ)', nargs=2, metavar=('PATTERN', 'REPL')) argparser.add_argument('--disable-series-guide', help='レーベル一覧ページからシリーズ一覧ページへのガイドを' '追加しない (-t/-tt 指定時のみ)', dest='series_guide', action='store_false', default=True) # 出力装飾 argparser.add_argument('--without-header', help='ヘッダ情報を出力しない', dest='header', action='store_false', default=True) argparser.add_argument( '--split', help='1ページあたりのタイトル数 (デフォルト {})'.format(SPLIT_DEFAULT), type=int, default=SPLIT_DEFAULT) # 補助チェック argparser.add_argument('-f', '--disable-follow-redirect', help='ページのリダイレクト先をチェックしない', dest='follow_rdr', action='store_false', default=True) argparser.add_argument('--check-rental', help='レンタル先行メーカーでレンタル版じゃなかったのとき' 'レンタル版のリリースをチェックする', action='store_true', default=False) argparser.add_argument('--disable-check-bd', help='Blu-ray版のときDVD版があってもパスしない', action='store_false', dest='pass_bd', default=True) argparser.add_argument('--disable-check-listpage', help='Wiki上の実際の一覧ページを探さない', dest='check_listpage', action='store_false', default=True) argparser.add_argument('--disable-check-related', help='他メディアやサービスの情報収集を行わない', dest='check_rltd', action='store_false', default=True) argparser.add_argument('--disable-longtitle', help='アパッチ、SCOOPの長いタイトルを補完しない', dest='longtitle', action='store_false', default=True) argparser.add_argument('--fastest', help='ウェブにアクセスするあらゆる補助処理を行わない', action='store_true') argparser.add_argument('--recheck', help='キャッシュしているリダイレクト先を強制再チェック', action='store_true') argparser.add_argument('-c', '--copy', help='作成したウィキテキストをクリップボードへコピーする(pyperclipが必要)', action='store_true') # ブラウザ制御 argparser.add_argument('-b', '--browser', help='生成後、wikiのページをウェブブラウザで開く', action='store_true') # その他 argparser.add_argument('-C', '--clear-cache', help='プログラム終了時にキャッシュをクリアする', action='store_true') argparser.add_argument('-v', '--verbose', help='デバッグ用情報を出力する', action='count', default=0) argparser.add_argument('-V', '--version', help='バージョン情報を表示して終了する', action='version', version='%(prog)s {}'.format(__version__)) args = argparser.parse_args(argv) VERBOSE = args.verbose verbose = libssw.def_verbose(VERBOSE, libssw.ownname(__file__)) verbose('Verbose mode on') libssw.RECHECK = args.recheck if args.retrieval == 'url' and (args.cid or args.cid_l): emsg('E', '-U 指定時に --cid/--cid-l は指定できません。') # サービス未指定の決定 # 引数にURLが与えられていればそれから判定 # TSVやウィキテキスト入力でなければそれ以外ならセル版 # TSVやウィキテキスト入力ならあとで作品情報から判定 if args.keyword: if not args.service: if re.match('https?://.+', args.keyword[0]): args.service = libssw.resolve_service(args.keyword[0]) elif not (args.from_tsv or args.from_wiki): args.service = 'dvd' if (args.cid or args.cid_l) and '{}' in args.keyword[0]: verbose('args.cid check') # --row 未指定で --cid(-l) で連番指定の場合の自動決定 # --start-{p,c}id だけでは連番と確定できないので何もしない if not args.row: args.row = int(args.keyword[1]) verbose('row is set by cid: ', args.row) # ここで row 未指定時のデフォルト設定 if not args.row: args.row = 1 # start-pidは大文字、start-cidは小文字固定 args.start_pid = args.start_pid.upper() args.start_pid_s = args.start_pid_s.upper() args.start_cid = args.start_cid.lower() args.last_pid = args.last_pid.upper() args.last_cid = args.last_cid.lower() # ヘッダを抑止するときはページ分割もしない if not args.header: args.split = 0 if args.fastest: for a in ('follow_rdr', 'check_rental', 'pass_bd', 'check_listpage', 'longtitle'): setattr(args, a, False) # キャッシュディレクトリの削除 if args.clear_cache: libssw.clear_cache() verbose('args: ', args) return args
def get_args(): global VERBOSE global verbose argparser = argparse.ArgumentParser( description='メーカー配下の全レーベルの一覧、レーベル配下の全シリーズの一覧をウィキテキストで作成する') argparser.add_argument('root', help='メーカー/レーベルのIDまたはDMMでのその一覧ページのURL', metavar='ID') argparser.add_argument('-t', '--target', help='IDがメーカーかレーベルかを指定する', choices=('maker', 'label'), default='maker') argparser.add_argument('--service', help='取得するサービスを指定する', choices=('dvd', 'rental', 'video', 'ama', 'all'), default='dvd') argparser.add_argument('-o', '--outfile', help='出力ファイル名を指定する(デフォルト名を変更する)', metavar='FILE') argparser.add_argument('-r', '--replace', help='一覧の出力ファイルと同名のファイルがあった場合上書きする', action='store_true') argparser.add_argument('-p', '--pickle-path', help='保存ファイルのパスを指定する') only = argparser.add_mutually_exclusive_group() only.add_argument('-l', '--only-label', help='レーベル一覧だけ出力する', action='store_true') only.add_argument('-s', '--only-series', help='シリーズ一覧だけ出力する', action='store_true') argparser.add_argument('--sort-key', help='ソートキー', choices=('release', 'name', 'number'), default='release') argparser.add_argument('-u', '--unsuppress', help='シリーズ一覧を作成しないよう指定されているレーベルに' 'ついても作成する', action='store_false', dest='suppress', default=True) argparser.add_argument('-d', '--without-dmm', help='DMMへのリンクを追加しない', action='store_false', dest='dmm', default=True) argparser.add_argument('-a', '--without-latest', help='最新リリース日を追加しない', action='store_false', dest='latest', default=True) argparser.add_argument('-e', '--without-prefixes', help='品番のプレフィクスの統計を出力しない', dest='prefixes', action='store_false', default=True) argparser.add_argument('--regen-pid', help='品番を再作成する', action='store_true') argparser.add_argument('-C', '--clear-cache', help='プログラム終了時にHTTPキャッシュをクリアする', action='store_true') argparser.add_argument('-v', '--verbose', help='デバッグ用情報を出力する', action='count', default=0) argparser.add_argument('-V', '--version', help='バージョン情報を表示して終了する', action='version', version='%(prog)s {}'.format(__version__)) args = argparser.parse_args() VERBOSE = args.verbose verbose = libssw.def_verbose(VERBOSE, libssw.ownname(__file__)) verbose('verbose mode on') verbose('args: {}'.format(args)) return args
def get_args(): """コマンドライン引数の解釈""" global VERBOSE global verbose argparser = argparse.ArgumentParser(description='ウィキテキスト(表形式)を補完または置き換え') argparser.add_argument('target', help='対象のウィキテキストファイル名(未指定で標準入力)', nargs='?', type=argparse.FileType('r'), default=sys.stdin, metavar='TARGET') argparser.add_argument('-i', '--input', help='補完・置き換えデータのファイル', nargs='+', dest='ifiles') argparser.add_argument('-o', '--out', help='ファイルに出力 (未指定時は標準出力へ出力)', metavar='FILE') argparser.add_argument('-r', '--replace', help='出力ファイルと同名のファイルがあった場合上書きする', action='store_true') argparser.add_argument('-f', '--force', help='補完・置き換えファイルの内容で対象を強制的に置き換える', action='store_true') argparser.add_argument('-a', '--actress', help='出演者情報のみ置き換え・補完する', action='store_true') argparser.add_argument('-p', '--other-page', help='[[別ページ>]]のみ置き換える', action='store_true') argparser.add_argument('-d', '--diff', help='修正前と後の差分をウェブブラウザで表示する', action='store_true') argparser.add_argument('-v', '--verbose', help='デバッグ用情報を出力する', action='count', default=0) argparser.add_argument('-V', '--version', help='バージョン情報を表示して終了する', action='version', version='%(prog)s {}'.format(__version__)) args = argparser.parse_args() VERBOSE = args.verbose verbose = libssw.def_verbose(VERBOSE, libssw.ownname(__file__)) verbose('verbose mode on') verbose('args: ', (args)) return args
def get_args(): global VERBOSE global verbose argparser = argparse.ArgumentParser( description='素人系総合Wikiの一覧ページにあって女優ページにない作品の洗い出し') argparser.add_argument('target', help='調査対象一覧ページのURL/ウィキテキスト(未指定で標準入力から読み込み)', nargs='?', default='-', metavar='TARGET') argparser.add_argument('-w', '--from-wikitext', help='入力ファイルがウィキテキストの場合指定する', action='store_true') argparser.add_argument('-l', '--list-name', help='一覧ページ名を直接指定') argparser.add_argument('-s', '--start-pid', help='チェック開始品番', default='') argparser.add_argument('--note', help='作成したウィキテキストに備考として出力', nargs='+', default=[]) list_page = argparser.add_mutually_exclusive_group() list_page.add_argument('--series', help='シリーズ一覧へのリンクを追加(DMM上のものを置き換え)') list_page.add_argument('--label', help='レーベル一覧へのリンクを追加(DMM上のものを置き換え)') list_page.add_argument('--hide-list', help='一覧ページへのリンクを追加しない', action='store_true') argparser.add_argument('--linklabel', help='一覧ページへのリンクの表示名を置き換える') argparser.add_argument('--disable-wikitext', help='女優ページに作品がない女優がいる作品のウィキテキストを作成しない', action='store_false', dest='gen_wikitext', default=True) argparser.add_argument('-b', '--browser', help='生成後、wikiのページをブラウザで開く', action='store_true') argparser.add_argument('-v', '--verbose', help='デバッグ用情報を出力する', action='count', default=0) argparser.add_argument('-V', '--version', help='バージョン情報を表示して終了する', action='version', version='%(prog)s {}'.format(__version__)) args = argparser.parse_args() VERBOSE = args.verbose verbose = libssw.def_verbose(VERBOSE, libssw.ownname(__file__)) verbose('verbose mode on') args.start_pid = args.start_pid.upper() if args.browser: args.gen_wikitext = True return args
def get_args(): global VERBOSE global verbose argparser = argparse.ArgumentParser( description='素人系総合wiki女優ページにない作品情報をDMMから補完する') argparser.add_argument('wikifiles', help='Wiki女優ページ(ウィキテキスト)を格納したファイル(未指定で標準入力から入力)', nargs='*', metavar='WIKIFILES') argparser.add_argument('-a', '--actress-id', help='DMM上での女優のID(または女優の作品一覧のURL)', nargs='+', default=[], metavar='ID') # ファイル出力 argparser.add_argument('-o', '--out', help='ファイルに出力 (未指定時は標準出力へ出力)', metavar='FILE') argparser.add_argument('-r', '--replace', help='出力ファイルと同名のファイルがあった場合上書きする', action='store_true') argparser.add_argument( '--split', help='指定作品数ごとに「// {0}」のようにコメント行を入れる (デフォルト {0})'.format(SPLIT_DEFAULT), type=int, default=SPLIT_DEFAULT) # 作品データの除外基準 argparser.add_argument('-m', '--disable-omit', help='IVを除外しない, 2個指定すると総集編作品も、' '3個指定するとアウトレット版も、' '4個指定すると限定盤も除外しない', dest='no_omit', action='count', default=0) argparser.add_argument('-f', '--disable-follow-redirect', help='ページのリダイレクト先をチェックしない', dest='follow_rdr', action='store_false', default=True) argparser.add_argument('--disable-check-rental', help='レンタル先行メーカーでセル版のときレンタル版の' 'リリースをチェックしない', action='store_false', dest='check_rental', default=True) argparser.add_argument('--disable-check-bd', help='Blu-ray版のときDVD版があってもパスしない', action='store_false', dest='pass_bd', default=True) argparser.add_argument('--disable-check-listpage', help='Wiki上の実際の一覧ページを探さない', dest='check_listpage', action='store_false', default=True) argparser.add_argument('--fastest', help='処理時間に影響するあらゆる補助処理を行わない', action='store_true') argparser.add_argument('-d', '--diff', help='データ追加前と後の差分をウェブブラウザで表示する', action='store_true') argparser.add_argument('-C', '--clear-cache', help='プログラム終了時にHTTPキャッシュをクリアする', action='store_true') argparser.add_argument('-v', '--verbose', help='デバッグ用情報を出力する', action='count', default=0) argparser.add_argument('-V', '--version', help='バージョン情報を表示して終了する', action='version', version='%(prog)s {}'.format(__version__)) args = argparser.parse_args() # dmmsar.py 側からVERBOSEが変更される場合があるため verbose.verbose = VERBOSE = VERBOSE or args.verbose VERBOSE = args.verbose verbose = libssw.def_verbose(VERBOSE, libssw.ownname(__file__)) verbose('verbose mode on') # キャッシュディレクトリの削除 if args.clear_cache: libssw.clear_cache() if args.fastest: for a in ('follow_rdr', 'check_rental', 'pass_bd', 'check_listpage'): setattr(args, a, False) verbose('args: ', args) return args