当前位置: 首页>>代码示例>>Python>>正文


Python Util.load_cookies方法代码示例

本文整理汇总了Python中utils.Util.load_cookies方法的典型用法代码示例。如果您正苦于以下问题:Python Util.load_cookies方法的具体用法?Python Util.load_cookies怎么用?Python Util.load_cookies使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在utils.Util的用法示例。


在下文中一共展示了Util.load_cookies方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: __init__

# 需要导入模块: from utils import Util [as 别名]
# 或者: from utils.Util import load_cookies [as 别名]

#.........这里部分代码省略.........
        r = requests.get(url, headers=headers, verify=self.verify)

        return r.text

    def access_token(self):
        url = 'https://us.edge.bamgrid.com/token'
        headers = {'Accept': 'application/json',
                   'Authorization': 'Bearer bWxidHYmYW5kcm9pZCYxLjAuMA.6LZMbH2r--rbXcgEabaDdIslpo4RyZrlVfWZhsAgXIk',
                   'Content-Type': 'application/x-www-form-urlencoded'
                   }
        payload = 'grant_type=urn:ietf:params:oauth:grant-type:token-exchange&subject_token=%s' \
                  '&subject_token_type=urn:ietf:params:oauth:token-type:jwt&platform=android-tv' \
                  % self.media_entitlement()

        r = requests.post(url, headers=headers, data=payload, verify=self.verify)
        access_token = r.json()['access_token']
        # refresh_token = r.json()['refresh_token']

        return access_token

    def get_playback_url(self, content_id):
        auth = self.access_token()
        url = 'https://search-api-mlbtv.mlb.com/svc/search/v2/graphql/persisted/query/core/Airings' \
              '?variables=%7B%22contentId%22%3A%22' + content_id + '%22%7D'

        headers = {
            'Accept': 'application/json',
            'Authorization': 'Bearer ' + auth,
            'X-BAMSDK-Version': 'v4.3.0',
            'X-BAMSDK-Platform': 'android-tv',
            'User-Agent': 'BAMSDK/v4.3.0 (mlbaseball-7993996e 8.1.0; v2.0/v4.3.0; android; tv)'
        }

        r = requests.get(url, headers=headers, cookies=self.util.load_cookies(), verify=self.verify)
        if r.status_code != 200:
            dialog = xbmcgui.Dialog()
            title = "Error Occured"
            msg = ""
            for item in r.json()['errors']:
                msg += item['code'] + '\n'
            dialog.notification(title, msg, self.icon, 5000, False)
            sys.exit()

        return auth, r.json()['data']['Airings'][0]['playbackUrls'][0]['href']

    def get_stream(self, content_id):
        auth, url = self.get_playback_url(content_id)
        url = url.replace('{scenario}','browser~csai')

        headers = {
            'Accept': 'application/vnd.media-service+json; version=2',
            'Authorization': auth,
            'X-BAMSDK-Version': '3.0',
            'X-BAMSDK-Platform': 'windows',
            'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.181 Safari/537.36'
        }

        r = requests.get(url, headers=headers, cookies=self.util.load_cookies(), verify=self.verify)
        if r.status_code != 200:
            dialog = xbmcgui.Dialog()
            title = "Error Occured"
            msg = ""
            for item in r.json()['errors']:
                msg += item['code'] + '\n'
            dialog.notification(title, msg, self.icon, 5000, False)
            sys.exit()
开发者ID:eracknaphobia,项目名称:plugin.video.mlbtv,代码行数:70,代码来源:account.py

示例2: __init__

# 需要导入模块: from utils import Util [as 别名]
# 或者: from utils.Util import load_cookies [as 别名]
class Account:
    addon = xbmcaddon.Addon()
    username = ''
    password = ''
    session_key = ''
    icon = os.path.join(addon.getAddonInfo('path'), 'icon.png')
    verify = False

    def __init__(self):
        self.username = self.addon.getSetting('username')
        self.password = self.addon.getSetting('password')
        self.session_key = self.addon.getSetting('session_key')
        self.util = Util()

    def login(self):
        # Check if username and password are provided
        if self.username == '':
            dialog = xbmcgui.Dialog()
            username = dialog.input('Please enter your username', type=xbmcgui.INPUT_ALPHANUM)
            self.addon.setSetting(id='username', value=username)

        if self.password == '':
            dialog = xbmcgui.Dialog()
            password = dialog.input('Please enter your password', type=xbmcgui.INPUT_ALPHANUM, option=xbmcgui.ALPHANUM_HIDE_INPUT)
            self.addon.setSetting(id='password', value=password)

        if self.username == '' or self.password == '':
            sys.exit()
        else:
            url = 'https://secure.mlb.com/pubajaxws/services/IdentityPointService'
            headers = {
                "SOAPAction": "http://services.bamnetworks.com/registration/identityPoint/identify",
                "Content-type": "text/xml; charset=utf-8",
                "User-Agent": "Dalvik/2.1.0 (Linux; U; Android 6.0.1; Hub Build/MHC19J)",
                "Connection": "Keep-Alive"
            }

            payload = "<?xml version='1.0' encoding='UTF-8'?>"
            payload += '<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">'
            payload += '<SOAP-ENV:Body><tns:identityPoint_identify_request xmlns:tns="http://services.bamnetworks.com/registration/types/1.4">'
            payload += '<tns:identification type="email-password"><tns:id xsi:nil="true"/>'
            payload += '<tns:fingerprint xsi:nil="true"/>'
            payload += '<tns:email>'
            payload += '<tns:id xsi:nil="true"/>'
            payload += '<tns:address>' + self.username + '</tns:address>'
            payload += '</tns:email>'
            payload += '<tns:password>' + self.password + '</tns:password>'
            payload += '<tns:mobilePhone xsi:nil="true"/>'
            payload += '<tns:profileProperty xsi:nil="true"/>'
            payload += '</tns:identification>'
            payload += '</tns:identityPoint_identify_request>'
            payload += '</SOAP-ENV:Body>'
            payload += '</SOAP-ENV:Envelope>'

            r = requests.post(url, headers=headers, data=payload, verify=self.verify)

            """
            Bad username => <status><code>-1000</code><message> [Invalid credentials for identification] [com.bamnetworks.registration.types.exception.IdentificationException: Account doesn't exits]</message><exceptionClass>com.bamnetworks.registration.types.exception.IdentificationException</exceptionClass><detail type="identityPoint" field="exists" message="false" messageKey="identityPoint.exists" /><detail type="identityPoint" field="email-password" message="identification error on identity point of type email-password" messageKey="identityPoint.email-password" /></status>
            Bad password => <status><code>-1000</code><message> [Invalid credentials for identification] [com.bamnetworks.registration.types.exception.IdentificationException: Invalid Password]</message><exceptionClass>com.bamnetworks.registration.types.exception.IdentificationException</exceptionClass><detail type="identityPoint" field="exists" message="true" messageKey="identityPoint.exists" /><detail type="identityPoint" field="email-password" message="identification error on identity point of type email-password" messageKey="identityPoint.email-password" /></status>
            Good => <status><code>1</code><message>OK</message></status>
            """
            if self.util.find(r.text, '<code>', '</code>') != '1':
                title = self.util.find(r.text, '<message> [', '] [')
                msg = self.util.find(r.text, 'com.bamnetworks.registration.types.exception.IdentificationException: ', ']</message>')
                dialog = xbmcgui.Dialog()
                dialog.ok(title, msg)
                sys.exit()
            else:
                self.util.save_cookies(r.cookies)

    def feature_service(self):
        if self.util.check_cookies():
            self.login()
        cookies = requests.utils.dict_from_cookiejar(self.util.load_cookies())
        url = 'https://secure.mlb.com/pubajaxws/services/FeatureService'
        headers = {
            "SOAPAction": "http://services.bamnetworks.com/registration/feature/findEntitledFeatures",
            "Content-type": "text/xml; charset=utf-8",
            "User-Agent": "Dalvik/2.1.0 (Linux; U; Android 6.0.1; Hub Build/MHC19J)",
            "Connection": "Keep-Alive"
        }

        payload = "<?xml version='1.0' encoding='UTF-8'?>"
        payload += '<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">'
        payload += '<soapenv:Header />'
        payload += '<soapenv:Body>'
        payload += '<feature_findEntitled_request xmlns="http://services.bamnetworks.com/registration/types/1.6">'

        if 'ipid' in cookies and 'fprt' in cookies and self.session_key != '':
            payload += "<identification type='fingerprint'>"
            payload += '<id>' + cookies['ipid'] + '</id>'
            payload += '<fingerprint>' + cookies['fprt'] + '</fingerprint>'
            payload += "<signOnRestriction type='mobileApp'>"
            payload += '<location>ANDROID_21d994bd-ebb1-4253-bcab-3550e7882294</location>'
            payload += '<sessionKey>' + self.session_key + '</sessionKey>'
        else:
            payload += "<identification type='email-password'>"
            payload += '<email><address>' + self.username + '</address></email>'
            payload += '<password>' + self.password + '</password>'
            payload += '<signOnRestriction type="mobileApp">'
#.........这里部分代码省略.........
开发者ID:Lunatixz,项目名称:repo-plugins,代码行数:103,代码来源:account.py

示例3: __init__

# 需要导入模块: from utils import Util [as 别名]
# 或者: from utils.Util import load_cookies [as 别名]
class Account:
    addon = xbmcaddon.Addon()
    username = ''
    password = ''
    session_key = ''
    icon = os.path.join(addon.getAddonInfo('path'), 'icon.png')
    verify = False

    def __init__(self):
        self.username = self.addon.getSetting('username')
        self.password = self.addon.getSetting('password')
        self.session_key = self.addon.getSetting('session_key')
        self.util = Util()

    def login(self):
        # Check if username and password are provided
        if self.username == '':
            dialog = xbmcgui.Dialog()
            username = dialog.input('Please enter your username', type=xbmcgui.INPUT_ALPHANUM)
            self.addon.setSetting(id='username', value=username)

        if self.password == '':
            dialog = xbmcgui.Dialog()
            password = dialog.input('Please enter your password', type=xbmcgui.INPUT_ALPHANUM, option=xbmcgui.ALPHANUM_HIDE_INPUT)
            self.addon.setSetting(id='password', value=password)

        if self.username == '' or self.password == '':
            sys.exit()
        else:
            url = 'https://secure.mlb.com/pubajaxws/services/IdentityPointService'
            headers = {
                "SOAPAction": "http://services.bamnetworks.com/registration/identityPoint/identify",
                "Content-type": "text/xml; charset=utf-8",
                "User-Agent": "Dalvik/2.1.0 (Linux; U; Android 6.0.1; Hub Build/MHC19J)",
                "Connection": "Keep-Alive"
            }

            payload = "<?xml version='1.0' encoding='UTF-8'?>"
            payload += '<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">'
            payload += '<SOAP-ENV:Body><tns:identityPoint_identify_request xmlns:tns="http://services.bamnetworks.com/registration/types/1.4">'
            payload += '<tns:identification type="email-password"><tns:id xsi:nil="true"/>'
            payload += '<tns:fingerprint xsi:nil="true"/>'
            payload += '<tns:email>'
            payload += '<tns:id xsi:nil="true"/>'
            payload += '<tns:address>' + self.username + '</tns:address>'
            payload += '</tns:email>'
            payload += '<tns:password>' + self.password + '</tns:password>'
            payload += '<tns:mobilePhone xsi:nil="true"/>'
            payload += '<tns:profileProperty xsi:nil="true"/>'
            payload += '</tns:identification>'
            payload += '</tns:identityPoint_identify_request>'
            payload += '</SOAP-ENV:Body>'
            payload += '</SOAP-ENV:Envelope>'

            r = requests.post(url, headers=headers, data=payload, verify=self.verify)

            """
            Bad username => <status><code>-1000</code><message> [Invalid credentials for identification] [com.bamnetworks.registration.types.exception.IdentificationException: Account doesn't exits]</message><exceptionClass>com.bamnetworks.registration.types.exception.IdentificationException</exceptionClass><detail type="identityPoint" field="exists" message="false" messageKey="identityPoint.exists" /><detail type="identityPoint" field="email-password" message="identification error on identity point of type email-password" messageKey="identityPoint.email-password" /></status>
            Bad password => <status><code>-1000</code><message> [Invalid credentials for identification] [com.bamnetworks.registration.types.exception.IdentificationException: Invalid Password]</message><exceptionClass>com.bamnetworks.registration.types.exception.IdentificationException</exceptionClass><detail type="identityPoint" field="exists" message="true" messageKey="identityPoint.exists" /><detail type="identityPoint" field="email-password" message="identification error on identity point of type email-password" messageKey="identityPoint.email-password" /></status>
            Good => <status><code>1</code><message>OK</message></status>
            """
            if self.util.find(r.text, '<code>', '</code>') != '1':
                title = self.util.find(r.text, '<message> [', '] [')
                msg = self.util.find(r.text, 'com.bamnetworks.registration.types.exception.IdentificationException: ', ']</message>')
                dialog = xbmcgui.Dialog()
                dialog.ok(title, msg)
                sys.exit()
            else:
                self.util.save_cookies(r.cookies)

    def feature_service(self):
        if self.util.check_cookies():
            self.login()
        cookies = requests.utils.dict_from_cookiejar(self.util.load_cookies())
        url = 'https://secure.mlb.com/pubajaxws/services/FeatureService'
        headers = {
            "SOAPAction": "http://services.bamnetworks.com/registration/feature/findEntitledFeatures",
            "Content-type": "text/xml; charset=utf-8",
            "User-Agent": "Dalvik/2.1.0 (Linux; U; Android 6.0.1; Hub Build/MHC19J)",
            "Connection": "Keep-Alive"
        }

        payload = "<?xml version='1.0' encoding='UTF-8'?>"
        payload += '<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">'
        payload += '<soapenv:Header />'
        payload += '<soapenv:Body>'
        payload += '<feature_findEntitled_request xmlns="http://services.bamnetworks.com/registration/types/1.6">'

        if 'ipid' in cookies and 'fprt' in cookies and self.session_key != '':
            payload += "<identification type='fingerprint'>"
            payload += '<id>' + cookies['ipid'] + '</id>'
            payload += '<fingerprint>' + cookies['fprt'] + '</fingerprint>'
            payload += "<signOnRestriction type='mobileApp'>"
            payload += '<location>ANDROID_21d994bd-ebb1-4253-bcab-3550e7882294</location>'
            payload += '<sessionKey>' + self.session_key + '</sessionKey>'
        else:
            payload += "<identification type='email-password'>"
            payload += '<email><address>' + self.username + '</address></email>'
            payload += '<password>' + self.password + '</password>'
            payload += '<signOnRestriction type="mobileApp">'
#.........这里部分代码省略.........
开发者ID:eracknaphobia,项目名称:repo-plugins,代码行数:103,代码来源:account.py


注:本文中的utils.Util.load_cookies方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。