def post(self): target = self.get_argument('target', default='') or 'all' num = int(self.get_argument('num', default='') or 5) delay = int(self.get_argument('delay', default='') or 10) proxypool = ProxyPool() try: proxies = proxypool.get_many(target=target, num=num, maxscore=delay) num_ret = len(proxies) mtime = proxypool.get_mtime(target=target) proxylist = [] for proxy in proxies: proxylist.append(proxy.decode('utf-8')) if str(target).upper() in proxypool.targets: status = 'success' else: status = 'success-partial' ret = { 'status': status, 'proxylist': { 'num': num_ret, 'mtime': mtime, 'target': target, 'proxies': proxylist, }, } except Exception as e: ret = { 'status': 'failure', 'target': target, 'err': str(e), } self.set_header('Content-Type', 'application/json') self.write(json.dumps(ret))