def setup(self, stdscr): curses.nonl() self.win_curses = stdscr color.init() self.win_curses.nodelay(0) state.window_head = self.head = Head() state.window_song_list = self.song_list = SongList() state.window_lyrics = self.lyrics = Lyrics() state.window_status_line = self.status_line = StatusLine() state.window_footer = self.footer = Footer() state.current_window = self.song_list self.draw() keys._after_movement() self.run()
def init(): """ init() -> None """ global stdscr, mainWin try: stdscr = curses.initscr() curses.noecho() curses.cbreak() stdscr.keypad(1) stdscr.nodelay(1) try: curses.curs_set(0) except: pass try: # curses.start_color() # curses.init_pair(1, curses.COLOR_RED, curses.COLOR_BLACK) # curses.init_pair(2, curses.COLOR_GREEN, curses.COLOR_BLACK) # curses.init_pair(3, curses.COLOR_YELLOW, curses.COLOR_BLACK) # curses.init_pair(4, curses.COLOR_BLUE, curses.COLOR_BLACK) # curses.init_pair(5, curses.COLOR_MAGENTA, curses.COLOR_BLACK) # curses.init_pair(6, curses.COLOR_CYAN, curses.COLOR_BLACK) # curses.init_pair(7, curses.COLOR_WHITE, curses.COLOR_BLACK) color.init() except: configs.misc.COLORED = False btInit() print configs.colorof except: quit() print "Problems while initialize" print "Unexpected error:", sys.exc_info()[2].tb_next print sys.exc_info()[1] print configs.colorof sys.exit()
def main(): color.init() print('tz2txt 程序版本: %s\n' % tz2txt_date) import argparse parser = argparse.ArgumentParser(prog=tz2txt_prog, description='用于帮助把帖子转为txt文件' ) parser.add_argument('-v', action='version', version=tz2txt_prog+' '+tz2txt_ver+' '+tz2txt_date ) subparsers = parser.add_subparsers(dest='subparser', help='子功能') # 下载成编排d parser_d = subparsers.add_parser('d', help='下载帖子到‘编排txt’') parser_d.add_argument('-u', type=str, help='帖子网址', metavar='网址', default='', dest='url') parser_d.add_argument('-t', type=int, help='下载页数,-1为到尾页', metavar='页数', default=-1, dest='tillnum') parser_d.add_argument('-o', type=str, help='输出文件名', metavar='文件名', dest='output') # 统计编排s parser_s = subparsers.add_parser('s', help='统计‘编排txt’的信息') parser_s.add_argument('-i', type=str, help='输入的编排文件', metavar='文件名', dest='input') # 处理编排p parser_p = subparsers.add_parser('p', help='自动处理‘编排txt’') parser_p.add_argument('-i', type=str, help='输入的编排文件', metavar='文件名', dest='input') parser_p.add_argument('-o', type=str, help='输出的编排文件', metavar='文件名', dest='output') # 编译c parser_c = subparsers.add_parser('c', help='编译‘编排txt’到‘纯txt’') parser_c.add_argument('-i', type=str, help='输入的编排文件', metavar='文件名', dest='input') parser_c.add_argument('-o', type=str, help='输出的最终txt文件', metavar='文件名', dest='output') parser_c.add_argument('-d', type=str, help='输出遗弃内容到txt文件', metavar='文件名', default='', dest='discard') parser_c.add_argument('-w', type=str, help='是否有位置信息,默认为没有', metavar='page或floor', default='', dest='label') # 全自动处理a parser_a = subparsers.add_parser('a', help='全自动生成最终文本') parser_a.add_argument('-u', type=str, help='帖子网址', metavar='网址', default='', dest='url') parser_a.add_argument('-t', type=int, help='下载页数,-1为到尾页', metavar='页数', default=-1, dest='tillnum') parser_a.add_argument('-o', type=str, help='输出的最终txt文件', metavar='文件名', dest='output') parser_a.add_argument('-d', type=str, help='输出遗弃内容到txt文件', metavar='文件名', default='', dest='discard') parser_a.add_argument('-w', type=str, help='是否有位置信息,默认为没有', metavar='page或floor', default='', dest='label') args = parser.parse_args() if args.subparser == 'd': if args.output == None: print('输出文件名不能为空') else: if check_file(args.output): if args.url == '': print('请粘贴(或输入)帖子的某页网址,作为起始下载页') url = input('网址:').strip() print() else: url = args.url if not is_url(url): print('网址格式错误,请检查,网址须以http://或https://开头。') else: pgnum = '末页' if args.tillnum == -1 else args.tillnum print('网址:{0}\n下载页数:{1}\n输出文件:{2}\n'.format( url, pgnum, args.output) ) download_till(url, args.tillnum, args.output) elif args.subparser == 's': if os.path.isfile(args.input): statistic(args.input) else: print('输入文件{0}不存在'.format(args.input)) elif args.subparser == 'p': if args.input == None: print('输入文件名不能为空') elif args.output == None: print('输出文件名不能为空') elif not os.path.isfile(args.input): print('输入文件{0}不存在'.format(args.input)) else: if check_file(args.output): bp_process_bp(args.input, args.output) elif args.subparser == 'c': if args.input == None: print('输入文件名不能为空') elif args.output == None: print('输出文件名不能为空') elif not os.path.isfile(args.input): print('输入文件{0}不存在'.format(args.input)) else: if check_file(args.output): compile_txt(args.input, args.output, args.discard, args.label) elif args.subparser == 'a': if args.output == None: print('输出文件名不能为空') else: if check_file(args.output): if args.url == '': print('请粘贴(或输入)帖子的某页网址,作为起始下载页') url = input('网址:').strip() print() else: url = args.url if not is_url(url): print('网址格式错误,请检查,网址须以http://或https://开头。') else: pgnum = '末页' if args.tillnum == -1 else args.tillnum print('网址:{0}\n下载页数:{1}\n输出文件:{2}\n'.format( url, pgnum, args.output) ) auto(url, args.tillnum, args.output, args.discard, args.label) else: parser.print_help() print() if os.name == 'nt': os.system('pause') color.deinit()
# 是否覆盖文件 def check_file(filename): if not os.path.isfile(filename): return True cover = input('输出文件{0}已存在,是否覆盖?(输入y覆盖,否则退出):'. format(filename) ).strip().lower() if cover == 'y': print() return True else: return False if __name__ == '__main__': color.init() print('tz2txt 程序版本: %s\n' % tz2txt_date) import argparse parser = argparse.ArgumentParser(prog=tz2txt_prog, description='用于帮助把帖子转为txt文件' ) parser.add_argument('-v', action='version', version=tz2txt_prog+' '+tz2txt_ver+' '+tz2txt_date ) subparsers = parser.add_subparsers(dest='subparser', help='子功能') # 下载成编排d parser_d = subparsers.add_parser('d', help='下载帖子到‘编排txt’') parser_d.add_argument('-u', type=str, help='帖子网址',
# 是否覆盖文件 def check_file(filename): if not os.path.isfile(filename): return True cover = input( '输出文件{0}已存在,是否覆盖?(输入y覆盖,否则退出):'.format(filename)).strip().lower() if cover == 'y': print() return True else: return False if __name__ == '__main__': color.init() print('tz2txt 程序版本: %s\n' % tz2txt_date) import argparse parser = argparse.ArgumentParser(prog=tz2txt_prog, description='用于帮助把帖子转为txt文件') parser.add_argument('-v', action='version', version=tz2txt_prog + ' ' + tz2txt_ver + ' ' + tz2txt_date) subparsers = parser.add_subparsers(dest='subparser', help='子功能') # 下载成编排d parser_d = subparsers.add_parser('d', help='下载帖子到‘编排txt’') parser_d.add_argument('-u', type=str,