sony.py 文件源码

python
阅读 21 收藏 0 点赞 0 评论 0

项目:plugin.video.psvue 作者: eracknaphobia 项目源码 文件源码
def login(self):
        if self.username == '':
            dialog = xbmcgui.Dialog()
            self.username = dialog.input(self.localized(30202), type=xbmcgui.INPUT_ALPHANUM)
            if self.username != '':
                self.addon.setSetting(id='username', value=self.username)
            else:
                sys.exit()

        if self.password == '':
            dialog = xbmcgui.Dialog()
            self.password = dialog.input(self.localized(30203), type=xbmcgui.INPUT_ALPHANUM, option=xbmcgui.ALPHANUM_HIDE_INPUT)
            if self.password != '':
                self.addon.setSetting(id='password', value=self.password)
            else:
                sys.exit()

        if self.username != '' and self.password != '':
            url = self.api_url + '/ssocookie'
            headers = {"Accept": "*/*",
                       "Content-type": "application/x-www-form-urlencoded",
                       "Origin": "https://id.sonyentertainmentnetwork.com",
                       "Accept-Language": "en-US,en;q=0.8",
                       "Accept-Encoding": "deflate",
                       "User-Agent": self.ua_android_tv,
                       "X-Requested-With": "com.snei.vue.atv",
                       "Connection": "Keep-Alive"
                       }

            payload = 'authentication_type=password&username='+urllib.quote_plus(self.username)+'&password='+urllib.quote_plus(self.password)+'&client_id='+self.andriod_tv_client_id
            r = requests.post(url, headers=headers, cookies=self.load_cookies(), data=payload, verify=self.verify)
            json_source = r.json()
            self.save_cookies(r.cookies)

            if 'npsso' in json_source:
                npsso = json_source['npsso']
                self.addon.setSetting(id='npsso', value=npsso)
            elif 'authentication_type' in json_source:
                if json_source['authentication_type'] == 'two_step':
                    ticket_uuid = json_source['ticket_uuid']
                    self.two_step_verification(ticket_uuid)
            elif 'error_description' in json_source:
                msg = json_source['error_description']
                self.notification_msg(self.localized(30200), msg)
                sys.exit()
            else:
                # Something went wrong during login
                self.notification_msg(self.localized(30200), self.localized(30201))
                sys.exit()
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号