예제 #1
0
    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
예제 #2
0
    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
예제 #3
0
    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
예제 #4
0
    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