Kodi Community Forum
[RELEASE] NetfliXBMC - Unofficial Netflix Add-on (Win/OSX/Linux) - Thread 2 - Printable Version

+- Kodi Community Forum (https://forum.kodi.tv)
+-- Forum: Support (https://forum.kodi.tv/forumdisplay.php?fid=33)
+--- Forum: Add-on Support (https://forum.kodi.tv/forumdisplay.php?fid=27)
+---- Forum: Video Add-ons (https://forum.kodi.tv/forumdisplay.php?fid=154)
+---- Thread: [RELEASE] NetfliXBMC - Unofficial Netflix Add-on (Win/OSX/Linux) - Thread 2 (/showthread.php?tid=211574)



RE: [RELEASE] NetfliXBMC - Unofficial Netflix Add-on (Win/OSX/Linux) - Thread 2 - getochkn - 2015-10-26

(2015-10-26, 16:28)Sleuth255 Wrote: FYI, I'm currently working with apptui to get a close chrome browser capability into the netflix specific remote. Once I have that then it'll be a great remote for kodi/netflixbmc. Obviously some sort of chrome extension that can orchestrate Kodi remote button actions onto the "mouse only" netflix web gui would be ideal here but that could take a while. I wonder if we could successfully mount a campaign to get netflix to add keyboard navigation to the web gui instead. I'm not sure why they don't have this already since a mouse-only gui discriminates against disabled individuals who are trying to use netflix. Besides, I'd much prefer something official that wouldn't break.

http://sticky-ux.com/apps/NetflixRemoteController/

This app seems similiar to what you want to do, but it's made for the Windows 8/10 Netflix App from the Windows store. I use it and it's great. I can launch the netflix windows app from Kodi using advanced launcher, use my same remote to control netflix, then exit and I'm right back into Kodi. The dev of that app is great and has added buttons to adjust refresh rate on the fly, will be adding auto 5.1 selection soon. Not my app, just the easiest way I've found to enjoy Netflix on a Windows PC with my remote. lol.


RE: [RELEASE] NetfliXBMC - Unofficial Netflix Add-on (Win/OSX/Linux) - Thread 2 - Sleuth255 - 2015-10-26

Yup. I've been debating a W10 upgrade for my mediaPC for this reason.


RE: [RELEASE] NetfliXBMC - Unofficial Netflix Add-on (Win/OSX/Linux) - Thread 2 - djhifi - 2015-10-27

Will this work on Openelec ?


RE: [RELEASE] NetfliXBMC - Unofficial Netflix Add-on (Win/OSX/Linux) - Thread 2 - christian.lees - 2015-10-27

I've done a search through the forum and can't find a solution to this one. I'm using getflix as my DNS so I can access Netflix from other countries. I'm running Kodi 15.2 on top of Ubuntu 14.04 LTS.

With Getfilx set to USA

When I try to list Genres of TV shows I get a blank list, no error, nothing in the log.

When I try to search for a TV series, for example iZombie, it comes up, but if I try to list the seasons then I get a script error. The error in the log file is this
Code:
13:42:10 T:140191037810432  NOTICE: Thread JobWorker start, auto delete: true
13:42:10 T:140189719586560  NOTICE: Thread LanguageInvoker start, auto delete: false
13:42:10 T:140189719586560  NOTICE: -->Python Interpreter Initialized<--
13:42:11 T:140189719586560  NOTICE: URL: http://api-global.netflix.com/desktop/odp/episodes?languages=en-US&forceEpisodes=true&routing=redirect&video=80027159&country=US
13:42:12 T:140189719586560   ERROR: EXCEPTION Thrown (PythonToCppException) : -->Python callback/script returned the following error<--
                                             - NOTE: IGNORING THIS CAN LEAD TO MEMORY LEAKS!
                                            Error Type: <type 'exceptions.ValueError'>
                                            Error Contents: No JSON object could be decoded
                                            Traceback (most recent call last):
                                              File "/home/lounge/.kodi/addons/plugin.video.netflixbmc/default.py", line 1338, in <module>
                                                listSeasons(name, url, thumb)
                                              File "/home/lounge/.kodi/addons/plugin.video.netflixbmc/default.py", line 482, in listSeasons
                                                content = json.loads(content)
                                              File "/usr/lib/python2.7/json/__init__.py", line 338, in loads
                                                return _default_decoder.decode(s)
                                              File "/usr/lib/python2.7/json/decoder.py", line 366, in decode
                                                obj, end = self.raw_decode(s, idx=_w(s, 0).end())
                                              File "/usr/lib/python2.7/json/decoder.py", line 384, in raw_decode
                                                raise ValueError("No JSON object could be decoded")
                                            ValueError: No JSON object could be decoded
                                            -->End of Python script error report<--
13:42:12 T:140191544289216   ERROR: GetDirectory - Error getting plugin://plugin.video.netflixbmc/?mode=listSeasons&name=iZombie&thumb=%2fhome%2flounge%2f.kodi%2fuserdata%2faddon_data%2fplugin.video.netflixbmc%2fcache%2fcovers%2f80027159.jpg&url=80027159
13:42:12 T:140191544289216   ERROR: CGUIMediaWindow::GetDirectory(plugin://plugin.video.netflixbmc/?mode=listSeasons&name=iZombie&thumb=%2fhome%2flounge%2f.kodi%2fuserdata%2faddon_data%2fplugin.video.netflixbmc%2fcache%2fcovers%2f80027159.jpg&url=80027159) failed
13:42:12 T:140189719586560  NOTICE: Thread BackgroundLoader start, auto delete: false

For completeness I set Getflix back to Australia, as that is where I am, do a search for Daredevil (iZombie isn't on the Australian Netflix), go to list the seasons/episodes and the same error occurs

Code:
14:03:18 T:140189719586560  NOTICE: URL: http://api-global.netflix.com/desktop/search/instantsearch?esn=www&term=daredevil&locale=en-US&country=AU&authURL=1445914978511.VZQvumOsl+4HXQ7Kt3VyojUovmk=&_retry=0&routing=redirect
14:03:19 T:140190282675968  NOTICE: Thread BackgroundLoader start, auto delete: false
14:03:21 T:140189719586560  NOTICE: Thread LanguageInvoker start, auto delete: false
14:03:21 T:140189719586560  NOTICE: -->Python Interpreter Initialized<--
14:03:23 T:140189719586560  NOTICE: URL: http://api-global.netflix.com/desktop/odp/episodes?languages=en-US&forceEpisodes=true&routing=redirect&video=80018294&country=AU
14:03:24 T:140189719586560   ERROR: EXCEPTION Thrown (PythonToCppException) : -->Python callback/script returned the following error<--
                                             - NOTE: IGNORING THIS CAN LEAD TO MEMORY LEAKS!
                                            Error Type: <type 'exceptions.ValueError'>
                                            Error Contents: No JSON object could be decoded
                                            Traceback (most recent call last):
                                              File "/home/lounge/.kodi/addons/plugin.video.netflixbmc/default.py", line 1338, in <module>
                                                listSeasons(name, url, thumb)
                                              File "/home/lounge/.kodi/addons/plugin.video.netflixbmc/default.py", line 482, in listSeasons
                                                content = json.loads(content)
                                              File "/usr/lib/python2.7/json/__init__.py", line 338, in loads
                                                return _default_decoder.decode(s)
                                              File "/usr/lib/python2.7/json/decoder.py", line 366, in decode
                                                obj, end = self.raw_decode(s, idx=_w(s, 0).end())
                                              File "/usr/lib/python2.7/json/decoder.py", line 384, in raw_decode
                                                raise ValueError("No JSON object could be decoded")
                                            ValueError: No JSON object could be decoded
                                            -->End of Python script error report<--
14:03:24 T:140191544289216   ERROR: GetDirectory - Error getting plugin://plugin.video.netflixbmc/?mode=listSeasons&name=Marvel%27s%20Daredevil&thumb=%2fhome%2flounge%2f.kodi%2fuserdata%2faddon_data%2fplugin.video.netflixbmc%2fcache%2fcovers%2f80018294.jpg&url=80018294
14:03:24 T:140191544289216   ERROR: CGUIMediaWindow::GetDirectory(plugin://plugin.video.netflixbmc/?mode=listSeasons&name=Marvel%27s%20Daredevil&thumb=%2fhome%2flounge%2f.kodi%2fuserdata%2faddon_data%2fplugin.video.netflixbmc%2fcache%2fcovers%2f80018294.jpg&url=80018294) failed
14:03:24 T:140189719586560  NOTICE: Thread BackgroundLoader start, auto delete: false

This verifies that it may not be a locale problem as you can see it's set to US in the first and AU in the second.

Is there a fix for this?


RE: [RELEASE] NetfliXBMC - Unofficial Netflix Add-on (Win/OSX/Linux) - Thread 2 - horstepipe - 2015-10-27

hey
is there a way to add just everything Netflix offers to Kodi database? (doesn't matter that this could take a looong time)?


RE: [RELEASE] NetfliXBMC - Unofficial Netflix Add-on (Win/OSX/Linux) - Thread 2 - krutoileshii - 2015-10-28

(2015-10-22, 01:31)corona Wrote: I'm actually thinking of doing something similar to this for a medium term / alternate solution to the addons's issues, but also integrating keyboard control of the entire netflix interface.
I've done some work on this in the past, and have since found this project - which is currently also a bit broken but can be taken as inspiration to add controls. https://github.com/cheald/NetflixNavigator/

Some people may prefer to use netflix's interface over kodi's for browsing if their remote was going to work :-)

So I was going through the requests that get sent to Netflix when you navigate the site, here is what I have found so far

I think it should be possible to do this for everything based on what I'm seeing so far, search included.

Code:
Code to get Season List (No Description), could be added

Method: POST
URL: http://www.netflix.com/api/shakti/46f50b55/pathEvaluator?withSize=true&materialize=true&model=harris&fallbackEsn=WWW
URL Query String:

withSize=true
materialize=true
model=harris
fallbackEsn=WWW

Json payload:

{
   "paths":[
      [
         "videos",
         70242081,
         "similars",
         {
            "from":0,
            "to":25
         }
      ],
      [
         "videos",
         70242081,
         "seasonList",
         {
            "from":0,
            "to":100   - used 100 as i do not know how many seasons are there. I think something along the lines of 30 should likely be enough.
         },
         "summary"
      ],
      [
         "videos",
         70242081,
         "seasonList",
         "summary"
      ]
   ],
   "authURL":"AUTHORIZATION URL HERE"
}

This returns the following, which I think should be useful. (see screenshot. couldn't figure out how to copy json from firefox)

Response:
Code:
{
    "value": {
        "$size": 3465,
        "size": 3465,
        "videos": {
            "70153404": {
                "$size": 2954,
                "size": 2954,
                "seasonList": {
                    "0": [
                        "seasons",
                        "60030455"
                    ],
                    "1": [
                        "seasons",
                        "60030480"
                    ],
                    "2": [
                        "seasons",
                        "60030654"
                    ],
                    "3": [
                        "seasons",
                        "60030845"
                    ],
                    "4": [
                        "seasons",
                        "60031936"
                    ],
                    "5": [
                        "seasons",
                        "60033708"
                    ],
                    "6": [
                        "seasons",
                        "60035713"
                    ],
                    "7": [
                        "seasons",
                        "70012756"
                    ],
                    "8": [
                        "seasons",
                        "70020485"
                    ],
                    "9": [
                        "seasons",
                        "70040765"
                    ],
                    "10": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "11": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "12": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "13": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "14": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "15": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "16": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "17": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "18": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "19": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "20": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "21": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "22": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "23": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "24": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "25": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "26": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "27": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "28": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "29": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "30": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "31": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "32": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "33": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "34": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "35": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "36": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "37": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "38": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "39": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "40": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "41": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "42": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "43": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "44": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "45": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "46": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "47": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "48": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "49": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "50": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "51": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "52": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "53": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "54": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "55": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "56": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "57": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "58": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "59": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "60": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "61": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "62": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "63": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "64": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "65": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "66": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "67": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "68": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "69": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "70": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "71": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "72": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "73": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "74": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "75": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "76": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "77": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "78": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "79": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "80": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "81": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "82": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "83": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "84": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "85": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "86": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "87": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "88": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "89": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "90": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "91": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "92": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "93": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "94": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "95": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "96": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "97": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "98": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "99": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "100": {
                        "_sentinel": true,
                        "$type": "sentinel",
                        "$size": 32,
                        "size": 32
                    },
                    "$size": 32,
                    "size": 32,
                    "_sentinel": true,
                    "$type": "sentinel"
                }
            },
            "$size": 2954,
            "size": 2954
        },
        "seasons": {
            "60030455": {
                "$size": 51,
                "size": 51,
                "summary": {
                    "id": 60030455,
                    "length": 24,
                    "name": "Season 1",
                    "$type": "leaf",
                    "$size": 51,
                    "size": 51
                }
            },
            "60030480": {
                "$size": 51,
                "size": 51,
                "summary": {
                    "id": 60030480,
                    "length": 24,
                    "name": "Season 2",
                    "$type": "leaf",
                    "$size": 51,
                    "size": 51
                }
            },
            "60030654": {
                "$size": 51,
                "size": 51,
                "summary": {
                    "id": 60030654,
                    "length": 25,
                    "name": "Season 3",
                    "$type": "leaf",
                    "$size": 51,
                    "size": 51
                }
            },
            "60030845": {
                "$size": 51,
                "size": 51,
                "summary": {
                    "id": 60030845,
                    "length": 24,
                    "name": "Season 4",
                    "$type": "leaf",
                    "$size": 51,
                    "size": 51
                }
            },
            "60031936": {
                "$size": 51,
                "size": 51,
                "summary": {
                    "id": 60031936,
                    "length": 24,
                    "name": "Season 5",
                    "$type": "leaf",
                    "$size": 51,
                    "size": 51
                }
            },
            "60033708": {
                "$size": 51,
                "size": 51,
                "summary": {
                    "id": 60033708,
                    "length": 25,
                    "name": "Season 6",
                    "$type": "leaf",
                    "$size": 51,
                    "size": 51
                }
            },
            "60035713": {
                "$size": 51,
                "size": 51,
                "summary": {
                    "id": 60035713,
                    "length": 24,
                    "name": "Season 7",
                    "$type": "leaf",
                    "$size": 51,
                    "size": 51
                }
            },
            "70012756": {
                "$size": 51,
                "size": 51,
                "summary": {
                    "id": 70012756,
                    "length": 24,
                    "name": "Season 8",
                    "$type": "leaf",
                    "$size": 51,
                    "size": 51
                }
            },
            "70020485": {
                "$size": 51,
                "size": 51,
                "summary": {
                    "id": 70020485,
                    "length": 24,
                    "name": "Season 9",
                    "$type": "leaf",
                    "$size": 51,
                    "size": 51
                }
            },
            "70040765": {
                "$size": 52,
                "size": 52,
                "summary": {
                    "id": 70040765,
                    "length": 17,
                    "name": "Season 10",
                    "$type": "leaf",
                    "$size": 52,
                    "size": 52
                }
            },
            "$size": 511,
            "size": 511
        }
    },
    "paths": [
        [
            "videos",
            "70153404",
            "seasonList",
            {
                "from": 0,
                "to": 100
            },
            "summary"
        ],
        [
            "videos",
            "70153404",
            "seasonList"
        ]
    ]
}

Now going to see how to get additional information about the seasons, such as a list of all episodes, etc.

Not sure how this could be integrated into the plugin though as I am way too new to python (just learning).

Also, I think it should be possible to figure out how to get the rest of the info including episodes, descriptions, etc.


RE: [RELEASE] NetfliXBMC - Unofficial Netflix Add-on (Win/OSX/Linux) - Thread 2 - stephanev - 2015-10-30

(2015-10-27, 05:06)christian.lees Wrote: I've done a search through the forum and can't find a solution to this one. I'm using getflix as my DNS so I can access Netflix from other countries. I'm running Kodi 15.2 on top of Ubuntu 14.04 LTS.

With Getfilx set to USA

When I try to list Genres of TV shows I get a blank list, no error, nothing in the log.

When I try to search for a TV series, for example iZombie, it comes up, but if I try to list the seasons then I get a script error. The error in the log file is this
Code:
13:42:10 T:140191037810432  NOTICE: Thread JobWorker start, auto delete: true
13:42:10 T:140189719586560  NOTICE: Thread LanguageInvoker start, auto delete: false
13:42:10 T:140189719586560  NOTICE: -->Python Interpreter Initialized<--
13:42:11 T:140189719586560  NOTICE: URL: http://api-global.netflix.com/desktop/odp/episodes?languages=en-US&forceEpisodes=true&routing=redirect&video=80027159&country=US
13:42:12 T:140189719586560   ERROR: EXCEPTION Thrown (PythonToCppException) : -->Python callback/script returned the following error<--
                                             - NOTE: IGNORING THIS CAN LEAD TO MEMORY LEAKS!
                                            Error Type: <type 'exceptions.ValueError'>
                                            Error Contents: No JSON object could be decoded
                                            Traceback (most recent call last):
                                              File "/home/lounge/.kodi/addons/plugin.video.netflixbmc/default.py", line 1338, in <module>
                                                listSeasons(name, url, thumb)
                                              File "/home/lounge/.kodi/addons/plugin.video.netflixbmc/default.py", line 482, in listSeasons
                                                content = json.loads(content)
                                              File "/usr/lib/python2.7/json/__init__.py", line 338, in loads
                                                return _default_decoder.decode(s)
                                              File "/usr/lib/python2.7/json/decoder.py", line 366, in decode
                                                obj, end = self.raw_decode(s, idx=_w(s, 0).end())
                                              File "/usr/lib/python2.7/json/decoder.py", line 384, in raw_decode
                                                raise ValueError("No JSON object could be decoded")
                                            ValueError: No JSON object could be decoded
                                            -->End of Python script error report<--
13:42:12 T:140191544289216   ERROR: GetDirectory - Error getting plugin://plugin.video.netflixbmc/?mode=listSeasons&name=iZombie&thumb=%2fhome%2flounge%2f.kodi%2fuserdata%2faddon_data%2fplugin.video.netflixbmc%2fcache%2fcovers%2f80027159.jpg&url=80027159
13:42:12 T:140191544289216   ERROR: CGUIMediaWindow::GetDirectory(plugin://plugin.video.netflixbmc/?mode=listSeasons&name=iZombie&thumb=%2fhome%2flounge%2f.kodi%2fuserdata%2faddon_data%2fplugin.video.netflixbmc%2fcache%2fcovers%2f80027159.jpg&url=80027159) failed
13:42:12 T:140189719586560  NOTICE: Thread BackgroundLoader start, auto delete: false

For completeness I set Getflix back to Australia, as that is where I am, do a search for Daredevil (iZombie isn't on the Australian Netflix), go to list the seasons/episodes and the same error occurs

Code:
14:03:18 T:140189719586560  NOTICE: URL: http://api-global.netflix.com/desktop/search/instantsearch?esn=www&term=daredevil&locale=en-US&country=AU&authURL=1445914978511.VZQvumOsl+4HXQ7Kt3VyojUovmk=&_retry=0&routing=redirect
14:03:19 T:140190282675968  NOTICE: Thread BackgroundLoader start, auto delete: false
14:03:21 T:140189719586560  NOTICE: Thread LanguageInvoker start, auto delete: false
14:03:21 T:140189719586560  NOTICE: -->Python Interpreter Initialized<--
14:03:23 T:140189719586560  NOTICE: URL: http://api-global.netflix.com/desktop/odp/episodes?languages=en-US&forceEpisodes=true&routing=redirect&video=80018294&country=AU
14:03:24 T:140189719586560   ERROR: EXCEPTION Thrown (PythonToCppException) : -->Python callback/script returned the following error<--
                                             - NOTE: IGNORING THIS CAN LEAD TO MEMORY LEAKS!
                                            Error Type: <type 'exceptions.ValueError'>
                                            Error Contents: No JSON object could be decoded
                                            Traceback (most recent call last):
                                              File "/home/lounge/.kodi/addons/plugin.video.netflixbmc/default.py", line 1338, in <module>
                                                listSeasons(name, url, thumb)
                                              File "/home/lounge/.kodi/addons/plugin.video.netflixbmc/default.py", line 482, in listSeasons
                                                content = json.loads(content)
                                              File "/usr/lib/python2.7/json/__init__.py", line 338, in loads
                                                return _default_decoder.decode(s)
                                              File "/usr/lib/python2.7/json/decoder.py", line 366, in decode
                                                obj, end = self.raw_decode(s, idx=_w(s, 0).end())
                                              File "/usr/lib/python2.7/json/decoder.py", line 384, in raw_decode
                                                raise ValueError("No JSON object could be decoded")
                                            ValueError: No JSON object could be decoded
                                            -->End of Python script error report<--
14:03:24 T:140191544289216   ERROR: GetDirectory - Error getting plugin://plugin.video.netflixbmc/?mode=listSeasons&name=Marvel%27s%20Daredevil&thumb=%2fhome%2flounge%2f.kodi%2fuserdata%2faddon_data%2fplugin.video.netflixbmc%2fcache%2fcovers%2f80018294.jpg&url=80018294
14:03:24 T:140191544289216   ERROR: CGUIMediaWindow::GetDirectory(plugin://plugin.video.netflixbmc/?mode=listSeasons&name=Marvel%27s%20Daredevil&thumb=%2fhome%2flounge%2f.kodi%2fuserdata%2faddon_data%2fplugin.video.netflixbmc%2fcache%2fcovers%2f80018294.jpg&url=80018294) failed
14:03:24 T:140189719586560  NOTICE: Thread BackgroundLoader start, auto delete: false

This verifies that it may not be a locale problem as you can see it's set to US in the first and AU in the second.

Is there a fix for this?

I had the same issue after switching country back and forth on a VPN. I 'fixed' it by resetting the plugin cookies and cache


RE: [RELEASE] NetfliXBMC - Unofficial Netflix Add-on (Win/OSX/Linux) - Thread 2 - regder - 2015-11-01

Weird issue I'm having since I've tried to get this to work, NetfliXBMC appears to be working fine except it won't show the Netflix library. If I manually search for whatever I'm looking for, it shows up and plays fine. If I just try to browse the library, I get nothing. From the log it appears that netflixbmc is looking for strings.po which isn't there. Any ideas?

The following log is everything it spits out after selecting the latest Movies directory

Code:
22:53:16 T:140679019612224   DEBUG: Clearing cached fileitems [plugin://plugin.video.netflixbmc/?mode=listVideos&thumb&type=movie&url=https%3a%2f%2fwww.netflix.com%2fWiRecentAdditi$
22:53:16 T:140679019612224   DEBUG: CGUIMediaWindow::GetDirectory (plugin://plugin.video.netflixbmc/?mode=listVideos&thumb&type=movie&url=https%3a%2f%2fwww.netflix.com%2fWiRecentAd$
22:53:16 T:140679019612224   DEBUG:   ParentPath = [plugin://plugin.video.netflixbmc/?mode=main&thumb&type=movie&url]
22:53:16 T:140677375563520   DEBUG: StartScript - calling plugin NetfliXBMC('plugin://plugin.video.netflixbmc/','8','?mode=listVideos&thumb&type=movie&url=https%3a%2f%2fwww.netflix$
22:53:16 T:140677375563520   DEBUG: WaitOnScriptResult - waiting on the NetfliXBMC (id=15) plugin...
22:53:16 T:140678253995776  NOTICE: Thread LanguageInvoker start, auto delete: false
22:53:16 T:140678253995776    INFO: initializing python engine.
22:53:16 T:140678253995776   DEBUG: CPythonInvoker(15, /home/kodi/.kodi/addons/plugin.video.netflixbmc/default.py): start processing
22:53:16 T:140678253995776  NOTICE: -->Python Interpreter Initialized<--
22:53:16 T:140678253995776   DEBUG: CPythonInvoker(15, /home/kodi/.kodi/addons/plugin.video.netflixbmc/default.py): the source file to load is "/home/kodi/.kodi/addons/plugin.video$
22:53:16 T:140678253995776   DEBUG: CPythonInvoker(15, /home/kodi/.kodi/addons/plugin.video.netflixbmc/default.py): setting the Python path to /home/kodi/.kodi/addons/plugin.video.$
22:53:16 T:140678253995776   DEBUG: CPythonInvoker(15, /home/kodi/.kodi/addons/plugin.video.netflixbmc/default.py): entering source directory /home/kodi/.kodi/addons/plugin.video.n$
22:53:16 T:140678253995776   DEBUG: CPythonInvoker(15, /home/kodi/.kodi/addons/plugin.video.netflixbmc/default.py): instantiating addon using automatically obtained id of "plugin.v$
22:53:16 T:140678253995776  NOTICE: SSL is Disabled
22:53:16 T:140678253995776   DEBUG: LocalizeStrings: no strings.po file exist at /home/kodi/.kodi/addons/plugin.video.netflixbmc/resources/language/English, fallback to strings.xml
22:53:16 T:140678253995776   DEBUG: DialogProgress::StartModal called
22:53:16 T:140678253995776   DEBUG: ------ Window Init (DialogProgress.xml) ------
22:53:16 T:140678253995776  NOTICE: URL: https://www.netflix.com/WiRecentAdditionsGallery?nRR=releaseDate&nRT=all&pn=1&np=1&actionMethod=json
22:53:16 T:140679019612224   DEBUG: ------ Window Init (DialogBusy.xml) ------
22:53:19 T:140677375563520   DEBUG: WaitOnScriptResult- plugin returned successfully
22:53:19 T:140679019612224   DEBUG: Saving fileitems [plugin://plugin.video.netflixbmc/?mode=listVideos&thumb&type=movie&url=https%3a%2f%2fwww.netflix.com%2fWiRecentAdditionsGaller$
22:53:19 T:140679019612224   DEBUG:   -- items: 1, sort method: 0, ascending: false
22:53:19 T:140678071928576  NOTICE: Thread BackgroundLoader start, auto delete: false
22:53:19 T:140678071928576   DEBUG: Thread BackgroundLoader 140678071928576 terminating
22:53:19 T:140678253995776    INFO: CPythonInvoker(15, /home/kodi/.kodi/addons/plugin.video.netflixbmc/default.py): script successfully run
22:53:16 T:140679019612224   DEBUG: Clearing cached fileitems [plugin://plugin.video.netflixbmc/?mode=listVideos&thumb&type=movie&url=https%3a%2f%2fwww.netflix.com%2fWiRecentAdditi$
22:53:16 T:140679019612224   DEBUG: CGUIMediaWindow::GetDirectory (plugin://plugin.video.netflixbmc/?mode=listVideos&thumb&type=movie&url=https%3a%2f%2fwww.netflix.com%2fWiRecentAd$
22:53:16 T:140679019612224   DEBUG:   ParentPath = [plugin://plugin.video.netflixbmc/?mode=main&thumb&type=movie&url]
22:53:16 T:140677375563520   DEBUG: StartScript - calling plugin NetfliXBMC('plugin://plugin.video.netflixbmc/','8','?mode=listVideos&thumb&type=movie&url=https%3a%2f%2fwww.netflix$
22:53:16 T:140677375563520   DEBUG: WaitOnScriptResult - waiting on the NetfliXBMC (id=15) plugin...
22:53:16 T:140678253995776  NOTICE: Thread LanguageInvoker start, auto delete: false
22:53:16 T:140678253995776    INFO: initializing python engine.
22:53:16 T:140678253995776   DEBUG: CPythonInvoker(15, /home/kodi/.kodi/addons/plugin.video.netflixbmc/default.py): start processing
22:53:16 T:140678253995776  NOTICE: -->Python Interpreter Initialized<--
22:53:16 T:140678253995776   DEBUG: CPythonInvoker(15, /home/kodi/.kodi/addons/plugin.video.netflixbmc/default.py): the source file to load is "/home/kodi/.kodi/addons/plugin.video$
22:53:16 T:140678253995776   DEBUG: CPythonInvoker(15, /home/kodi/.kodi/addons/plugin.video.netflixbmc/default.py): setting the Python path to /home/kodi/.kodi/addons/plugin.video.$
22:53:16 T:140678253995776   DEBUG: CPythonInvoker(15, /home/kodi/.kodi/addons/plugin.video.netflixbmc/default.py): entering source directory /home/kodi/.kodi/addons/plugin.video.n$
22:53:16 T:140678253995776   DEBUG: CPythonInvoker(15, /home/kodi/.kodi/addons/plugin.video.netflixbmc/default.py): instantiating addon using automatically obtained id of "plugin.v$
22:53:16 T:140678253995776  NOTICE: SSL is Disabled
22:53:16 T:140678253995776   DEBUG: LocalizeStrings: no strings.po file exist at /home/kodi/.kodi/addons/plugin.video.netflixbmc/resources/language/English, fallback to strings.xml
22:53:16 T:140678253995776   DEBUG: DialogProgress::StartModal called
22:53:16 T:140678253995776   DEBUG: ------ Window Init (DialogProgress.xml) ------
22:53:16 T:140678253995776  NOTICE: URL: https://www.netflix.com/WiRecentAdditionsGallery?nRR=releaseDate&nRT=all&pn=1&np=1&actionMethod=json
22:53:16 T:140679019612224   DEBUG: ------ Window Init (DialogBusy.xml) ------
22:53:19 T:140677375563520   DEBUG: WaitOnScriptResult- plugin returned successfully
22:53:19 T:140679019612224   DEBUG: Saving fileitems [plugin://plugin.video.netflixbmc/?mode=listVideos&thumb&type=movie&url=https%3a%2f%2fwww.netflix.com%2fWiRecentAdditionsGaller$
22:53:19 T:140679019612224   DEBUG:   -- items: 1, sort method: 0, ascending: false
22:53:19 T:140678071928576  NOTICE: Thread BackgroundLoader start, auto delete: false
22:53:19 T:140678071928576   DEBUG: Thread BackgroundLoader 140678071928576 terminating
22:53:19 T:140678253995776    INFO: CPythonInvoker(15, /home/kodi/.kodi/addons/plugin.video.netflixbmc/default.py): script successfully run
22:53:19 T:140678253995776    INFO: Python script stopped
22:53:19 T:140678253995776   DEBUG: Thread LanguageInvoker 140678253995776 terminating
22:53:19 T:140679019612224   DEBUG: ------ Window Deinit (DialogBusy.xml) ------
22:53:19 T:140679019612224   DEBUG: ------ Window Deinit (DialogProgress.xml) ------



RE: [RELEASE] NetfliXBMC - Unofficial Netflix Add-on (Win/OSX/Linux) - Thread 2 - blueman83 - 2015-11-01

(2015-11-01, 05:00)regder Wrote: Weird issue I'm having since I've tried to get this to work, NetfliXBMC appears to be working fine except it won't show the Netflix library. If I manually search for whatever I'm looking for, it shows up and plays fine. If I just try to browse the library, I get nothing. From the log it appears that netflixbmc is looking for strings.po which isn't there. Any ideas?

The following log is everything it spits out after selecting the latest Movies directory

Code:
22:53:16 T:140679019612224   DEBUG: Clearing cached fileitems [plugin://plugin.video.netflixbmc/?mode=listVideos&thumb&type=movie&url=https%3a%2f%2fwww.netflix.com%2fWiRecentAdditi$
22:53:16 T:140679019612224   DEBUG: CGUIMediaWindow::GetDirectory (plugin://plugin.video.netflixbmc/?mode=listVideos&thumb&type=movie&url=https%3a%2f%2fwww.netflix.com%2fWiRecentAd$
22:53:16 T:140679019612224   DEBUG:   ParentPath = [plugin://plugin.video.netflixbmc/?mode=main&thumb&type=movie&url]
22:53:16 T:140677375563520   DEBUG: StartScript - calling plugin NetfliXBMC('plugin://plugin.video.netflixbmc/','8','?mode=listVideos&thumb&type=movie&url=https%3a%2f%2fwww.netflix$
22:53:16 T:140677375563520   DEBUG: WaitOnScriptResult - waiting on the NetfliXBMC (id=15) plugin...
22:53:16 T:140678253995776  NOTICE: Thread LanguageInvoker start, auto delete: false
22:53:16 T:140678253995776    INFO: initializing python engine.
22:53:16 T:140678253995776   DEBUG: CPythonInvoker(15, /home/kodi/.kodi/addons/plugin.video.netflixbmc/default.py): start processing
22:53:16 T:140678253995776  NOTICE: -->Python Interpreter Initialized<--
22:53:16 T:140678253995776   DEBUG: CPythonInvoker(15, /home/kodi/.kodi/addons/plugin.video.netflixbmc/default.py): the source file to load is "/home/kodi/.kodi/addons/plugin.video$
22:53:16 T:140678253995776   DEBUG: CPythonInvoker(15, /home/kodi/.kodi/addons/plugin.video.netflixbmc/default.py): setting the Python path to /home/kodi/.kodi/addons/plugin.video.$
22:53:16 T:140678253995776   DEBUG: CPythonInvoker(15, /home/kodi/.kodi/addons/plugin.video.netflixbmc/default.py): entering source directory /home/kodi/.kodi/addons/plugin.video.n$
22:53:16 T:140678253995776   DEBUG: CPythonInvoker(15, /home/kodi/.kodi/addons/plugin.video.netflixbmc/default.py): instantiating addon using automatically obtained id of "plugin.v$
22:53:16 T:140678253995776  NOTICE: SSL is Disabled
22:53:16 T:140678253995776   DEBUG: LocalizeStrings: no strings.po file exist at /home/kodi/.kodi/addons/plugin.video.netflixbmc/resources/language/English, fallback to strings.xml
22:53:16 T:140678253995776   DEBUG: DialogProgress::StartModal called
22:53:16 T:140678253995776   DEBUG: ------ Window Init (DialogProgress.xml) ------
22:53:16 T:140678253995776  NOTICE: URL: https://www.netflix.com/WiRecentAdditionsGallery?nRR=releaseDate&nRT=all&pn=1&np=1&actionMethod=json
22:53:16 T:140679019612224   DEBUG: ------ Window Init (DialogBusy.xml) ------
22:53:19 T:140677375563520   DEBUG: WaitOnScriptResult- plugin returned successfully
22:53:19 T:140679019612224   DEBUG: Saving fileitems [plugin://plugin.video.netflixbmc/?mode=listVideos&thumb&type=movie&url=https%3a%2f%2fwww.netflix.com%2fWiRecentAdditionsGaller$
22:53:19 T:140679019612224   DEBUG:   -- items: 1, sort method: 0, ascending: false
22:53:19 T:140678071928576  NOTICE: Thread BackgroundLoader start, auto delete: false
22:53:19 T:140678071928576   DEBUG: Thread BackgroundLoader 140678071928576 terminating
22:53:19 T:140678253995776    INFO: CPythonInvoker(15, /home/kodi/.kodi/addons/plugin.video.netflixbmc/default.py): script successfully run
22:53:16 T:140679019612224   DEBUG: Clearing cached fileitems [plugin://plugin.video.netflixbmc/?mode=listVideos&thumb&type=movie&url=https%3a%2f%2fwww.netflix.com%2fWiRecentAdditi$
22:53:16 T:140679019612224   DEBUG: CGUIMediaWindow::GetDirectory (plugin://plugin.video.netflixbmc/?mode=listVideos&thumb&type=movie&url=https%3a%2f%2fwww.netflix.com%2fWiRecentAd$
22:53:16 T:140679019612224   DEBUG:   ParentPath = [plugin://plugin.video.netflixbmc/?mode=main&thumb&type=movie&url]
22:53:16 T:140677375563520   DEBUG: StartScript - calling plugin NetfliXBMC('plugin://plugin.video.netflixbmc/','8','?mode=listVideos&thumb&type=movie&url=https%3a%2f%2fwww.netflix$
22:53:16 T:140677375563520   DEBUG: WaitOnScriptResult - waiting on the NetfliXBMC (id=15) plugin...
22:53:16 T:140678253995776  NOTICE: Thread LanguageInvoker start, auto delete: false
22:53:16 T:140678253995776    INFO: initializing python engine.
22:53:16 T:140678253995776   DEBUG: CPythonInvoker(15, /home/kodi/.kodi/addons/plugin.video.netflixbmc/default.py): start processing
22:53:16 T:140678253995776  NOTICE: -->Python Interpreter Initialized<--
22:53:16 T:140678253995776   DEBUG: CPythonInvoker(15, /home/kodi/.kodi/addons/plugin.video.netflixbmc/default.py): the source file to load is "/home/kodi/.kodi/addons/plugin.video$
22:53:16 T:140678253995776   DEBUG: CPythonInvoker(15, /home/kodi/.kodi/addons/plugin.video.netflixbmc/default.py): setting the Python path to /home/kodi/.kodi/addons/plugin.video.$
22:53:16 T:140678253995776   DEBUG: CPythonInvoker(15, /home/kodi/.kodi/addons/plugin.video.netflixbmc/default.py): entering source directory /home/kodi/.kodi/addons/plugin.video.n$
22:53:16 T:140678253995776   DEBUG: CPythonInvoker(15, /home/kodi/.kodi/addons/plugin.video.netflixbmc/default.py): instantiating addon using automatically obtained id of "plugin.v$
22:53:16 T:140678253995776  NOTICE: SSL is Disabled
22:53:16 T:140678253995776   DEBUG: LocalizeStrings: no strings.po file exist at /home/kodi/.kodi/addons/plugin.video.netflixbmc/resources/language/English, fallback to strings.xml
22:53:16 T:140678253995776   DEBUG: DialogProgress::StartModal called
22:53:16 T:140678253995776   DEBUG: ------ Window Init (DialogProgress.xml) ------
22:53:16 T:140678253995776  NOTICE: URL: https://www.netflix.com/WiRecentAdditionsGallery?nRR=releaseDate&nRT=all&pn=1&np=1&actionMethod=json
22:53:16 T:140679019612224   DEBUG: ------ Window Init (DialogBusy.xml) ------
22:53:19 T:140677375563520   DEBUG: WaitOnScriptResult- plugin returned successfully
22:53:19 T:140679019612224   DEBUG: Saving fileitems [plugin://plugin.video.netflixbmc/?mode=listVideos&thumb&type=movie&url=https%3a%2f%2fwww.netflix.com%2fWiRecentAdditionsGaller$
22:53:19 T:140679019612224   DEBUG:   -- items: 1, sort method: 0, ascending: false
22:53:19 T:140678071928576  NOTICE: Thread BackgroundLoader start, auto delete: false
22:53:19 T:140678071928576   DEBUG: Thread BackgroundLoader 140678071928576 terminating
22:53:19 T:140678253995776    INFO: CPythonInvoker(15, /home/kodi/.kodi/addons/plugin.video.netflixbmc/default.py): script successfully run
22:53:19 T:140678253995776    INFO: Python script stopped
22:53:19 T:140678253995776   DEBUG: Thread LanguageInvoker 140678253995776 terminating
22:53:19 T:140679019612224   DEBUG: ------ Window Deinit (DialogBusy.xml) ------
22:53:19 T:140679019612224   DEBUG: ------ Window Deinit (DialogProgress.xml) ------
Also having the same problem here.


RE: [RELEASE] NetfliXBMC - Unofficial Netflix Add-on (Win/OSX/Linux) - Thread 2 - ciaron88 - 2015-11-01

(2015-10-30, 04:14)stephanev Wrote: I had the same issue after switching country back and forth on a VPN. I 'fixed' it by resetting the plugin cookies and cache

I am having this issue also but resting, clearing the cache and clearing the cookies does nothing for me. i don't use any VPN

Code:
11:20:05 T:11740   ERROR: EXCEPTION Thrown (PythonToCppException) : -->Python callback/script returned the following error<--
                                             - NOTE: IGNORING THIS CAN LEAD TO MEMORY LEAKS!
                                            Error Type: <type 'exceptions.ValueError'>
                                            Error Contents: No JSON object could be decoded
                                            Traceback (most recent call last):
                                              File "C:\Users\Ciaron\AppData\Roaming\Kodi\addons\plugin.video.netflixbmc\default.py", line 1256, in <module>
                                                addSeriesToLibrary(seriesID, name, url)
                                              File "C:\Users\Ciaron\AppData\Roaming\Kodi\addons\plugin.video.netflixbmc\default.py", line 881, in addSeriesToLibrary
                                                content = json.loads(content)
                                              File "C:\Program Files (x86)\Kodi\system\python\Lib\json\__init__.py", line 338, in loads
                                                return _default_decoder.decode(s)
                                              File "C:\Program Files (x86)\Kodi\system\python\Lib\json\decoder.py", line 366, in decode
                                                obj, end = self.raw_decode(s, idx=_w(s, 0).end())
                                              File "C:\Program Files (x86)\Kodi\system\python\Lib\json\decoder.py", line 384, in raw_decode
                                                raise ValueError("No JSON object could be decoded")
                                            ValueError: No JSON object could be decoded
                                            -->End of Python script error report<--



RE: [RELEASE] NetfliXBMC - Unofficial Netflix Add-on (Win/OSX/Linux) - Thread 2 - jimd3 - 2015-11-01

(2015-06-15, 00:47)johnnypicnic Wrote: Anyone finding their My List page empty?

(2015-09-24, 03:30)corona Wrote:
(2015-09-24, 01:57)jimd3 Wrote: I use both browser.sh and netflix.lirc in this plugin.

Each time I get an upgrade, the browser.sh permissions are changed and removes the "executable" on the file.
I need to always do a chmod 755 browser.sh on each upgrade.
Is there a smarter way I can handle this?

I have edited the netflix.lirc in the plugin.video.netflixbmc directory to map the LIRC to my remote key definitions.
Each time I get an update, the file is overwritten.
This really isn't surprising.
Should I be editing this file directly or is there a preferred means of mapping the LIRC keys?

Any advice appreciated.

Jim

With regard to overwriting the lirc keys, I don't have a workaround right now.
In future this file should be copied/moved to <kodi_home>userdata/addon_data/plugin.video.netflixbmc/ and then the end user can edit it as much as desired without fear of overwriting.
Same goes for the browser script really, as people will often want to edit this.

I've actually got a little fix for the executable flag for now though, would it be possible for you to test it for me?

first, remove the executable status from the file again ( to be sure the fix below does work ) :
Code:
chmod -x browser.sh

then find this chunk in default.py
Code:
elif osLinux:
        if linuxUseShellScript:
            xbmc.executebuiltin('LIRC.Stop')
            
            call = '"'+browserScript+'" "'+url+'"';
            debug("Browser Call: " + call)
            subprocess.call(call, shell=True)
            
            xbmc.executebuiltin('LIRC.Start')
        else:
            launchChrome(url)

and replace it with:
Code:
elif osLinux:
        if linuxUseShellScript:
            # Ensure the browserScript is executable
            import stat
            st = os.stat(browserScript)
            os.chmod(browserScript, st.st_mode | stat.S_IEXEC)

            xbmc.executebuiltin('LIRC.Stop')

            call = '"'+browserScript+'" "'+url+'"';
            debug("Browser Call: " + call)
            subprocess.call(call, shell=True)

            xbmc.executebuiltin('LIRC.Start')
        else:
            launchChrome(url)

Then try starting a netflix show.

Sorry, I forgot all about following up on this. I can confirm that this fix does indeed resolve the issue.
Thanks!

Best Regards,
Jim


RE: [RELEASE] NetfliXBMC - Unofficial Netflix Add-on (Win/OSX/Linux) - Thread 2 - mackemchris - 2015-11-02

So this is all working again?


RE: [RELEASE] NetfliXBMC - Unofficial Netflix Add-on (Win/OSX/Linux) - Thread 2 - Nerdy3.14159265 - 2015-11-05

Just curious, is there currently SteamOS support or plans for it in the future?


RE: [RELEASE] NetfliXBMC - Unofficial Netflix Add-on (Win/OSX/Linux) - Thread 2 - Nerdy3.14159265 - 2015-11-05

Just curious, is there currently SteamOS support or plans for it in the future?


RE: [RELEASE] NetfliXBMC - Unofficial Netflix Add-on (Win/OSX/Linux) - Thread 2 - sirhcjw - 2015-11-06

Any updates here tv shows still not working for me or have I missed something?