X-Git-Url: http://git.code-monkey.de/?p=plugin.video.netflix.git;a=blobdiff_plain;f=resources%2Flib%2FNetflixSession.py;h=a4c48744ef7a933cd6e0cc18ef2dc8b9a0dc4929;hp=8c3172482c2348cd3f9c771de01f7c5d671758da;hb=385854355a756f1689ef897443876e4f75ace542;hpb=9616c8fc595d3b3bf2fe379febeb2f498e8001d6 diff --git a/resources/lib/NetflixSession.py b/resources/lib/NetflixSession.py index 8c31724..a4c4874 100644 --- a/resources/lib/NetflixSession.py +++ b/resources/lib/NetflixSession.py @@ -3,21 +3,18 @@ # Module: NetflixSession # Created on: 13.01.2017 -import sys import os -import base64 -import time -import urllib import json -import requests -import platform +from requests import session, cookies +from urllib import quote, unquote +from time import time +from base64 import urlsafe_b64encode +from bs4 import BeautifulSoup, SoupStrainer +from utils import noop, get_user_agent_for_current_platform try: import cPickle as pickle except: import pickle -from bs4 import BeautifulSoup, SoupStrainer -from pyjsparser import PyJsParser -from utils import noop class NetflixSession: """Helps with login/session management of Netflix users & API data fetching""" @@ -27,15 +24,16 @@ class NetflixSession: urls = { 'login': '/login', - 'browse': '/browse', - 'video_list_ids': '/warmer', + 'browse': '/profiles/manage', + 'video_list_ids': '/preflight', 'shakti': '/pathEvaluator', - 'profiles': '/browse', + 'profiles': '/profiles/manage', 'switch_profiles': '/profiles/switch', 'adult_pin': '/pin/service', 'metadata': '/metadata', 'set_video_rating': '/setVideoRating', - 'update_my_list': '/playlistop' + 'update_my_list': '/playlistop', + 'kids': '/Kids' } """:obj:`dict` of :obj:`str` List of all static endpoints for HTML/JSON POST/GET requests""" @@ -103,9 +101,9 @@ class NetflixSession: self.log = log_fn # start session, fake chrome on the current platform (so that we get a proper widevine esn) & enable gzip - self.session = requests.session() + self.session = session() self.session.headers.update({ - 'User-Agent': self._get_user_agent_for_current_platform(), + 'User-Agent': get_user_agent_for_current_platform(), 'Accept-Encoding': 'gzip' }) @@ -151,13 +149,13 @@ class NetflixSession: :obj:`list` of :obj:`dict` List of all the serialized data pulled out of the pagws