def get_login_client(self): self.hello_world() # 先判断图片质量 Config.picture_quality = self.set_picture_quality() if Config.remember_account: account = Config.account password = Config.password if self.__load_login_client(): # 尝试直接载入token文件 # 载入成功直接返回即可 return self.client else: print u"建议直接使用内置帐号登录,敲击回车使用内置帐号,输入任意字符使用自有帐号" user_input = raw_input() if not user_input: account, password = Config.account, Config.password else: print u'现在开始登陆流程,请根据提示输入您的账号密码' print u'' print u'' account, password = self.get_account() captcha = None while not self.login(account, password, captcha): print u'啊哦,登录失败,可能需要输入验证码' print u'输入『yes』按回车更换其他账号' print u'直接敲击回车获取验证码' confirm = raw_input() if confirm == u'yes': account, password = self.get_account() captcha = self.get_captcha() Config.save() return self.client
def get_login_client(self): self.hello_world() # 先判断图片质量 Config.picture_quality = self.set_picture_quality() if Config.remember_account: account = Config.account password = Config.password if self.__load_login_client(): # 尝试直接载入token文件 # 载入成功直接返回即可 return self.client else: print u"建议直接使用内置帐号登录,敲击回车使用内置帐号,输入任意字符使用自有帐号" user_input = raw_input() if not user_input: account, password = Config.account, Config.password else: print u'现在开始登陆流程,请根据提示输入您的账号密码' print u'' print u'' account, password = self.get_account() captcha = None while not self.login(account, password, captcha): print u'啊哦,登录失败,可能需要输入验证码' print u'输入『yes』按回车更换其他账号' print u'直接敲击回车获取验证码' confirm = raw_input() if confirm == u'yes': account, password = self.get_account() captcha = self.get_captcha() Config.save() return self.client
def login(self, account, password, captcha=None): if not account or not password: print u"用户名/密码为空,请先输入用户名/密码" # 未输入用户名密码,直接返回false return False try: is_login_success, reason = self.client.login( account, password, captcha) except NeedCaptchaException: # 保存验证码并提示输入,重新登录 print u'登录失败,需要输入验证码' return False if not is_login_success: print u'登陆失败' print u"失败原因 => " + str(reason) return False print u'登陆成功!' print u'登陆账号:', account # 保持登录token self.__save_login_client() if Config.remember_account: Config.account, Config.password, Config.remember_account = account, password, True else: print u'请问是否需要记住帐号密码?输入yes记住,输入其它任意字符跳过,回车确认' if raw_input() == u'yes': Config.account, Config.password, Config.remember_account = account, password, True print u'帐号密码已保存,可通过修改config.json修改设置' else: # 清空数据 Config.account, Config.password, Config.remember_account = '', '', False # 清除token self.__clear_login_client() print u'跳过保存环节,进入下一流程' Config.save() return True
def login(self, account, password, captcha=None): if not account or not password: print u"用户名/密码为空,请先输入用户名/密码" # 未输入用户名密码,直接返回false return False try: is_login_success, reason = self.client.login(account, password, captcha) except NeedCaptchaException: # 保存验证码并提示输入,重新登录 print u'登录失败,需要输入验证码' return False if not is_login_success: print u'登陆失败' print u"失败原因 => " + str(reason) return False print u'登陆成功!' print u'登陆账号:', account # 保持登录token self.__save_login_client() if Config.remember_account: Config.account, Config.password, Config.remember_account = account, password, True else: print u'请问是否需要记住帐号密码?输入yes记住,输入其它任意字符跳过,回车确认' if raw_input() == u'yes': Config.account, Config.password, Config.remember_account = account, password, True print u'帐号密码已保存,可通过修改config.json修改设置' else: # 清空数据 Config.account, Config.password, Config.remember_account = '', '', False # 清除token self.__clear_login_client() print u'跳过保存环节,进入下一流程' Config.save() return True