andrewleech / plugin.video.netflixbmc

NetfliXBMC - Unofficial Netflix Add-on (Win/OSX/Linux)
http://forum.kodi.tv/showthread.php?tid=211574
GNU General Public License v2.0
56 stars 29 forks source link

Changes included in 1.3.19 causes netflixbmc not to start on some systems. #39

Open insertnamehere1 opened 9 years ago

insertnamehere1 commented 9 years ago

I'm unable to reproduce this problem. It appears only on a limited number of systems but causes netflixbmc to be unusable. It seams to be associated with windows 7 platforms.

After update or fresh install of v1.3.19 the user is unable to start netflixbmc. After a start attempt kodi returns the video menu. No exceptions are recorded in the log. The problem occurs during login after https://www.netflix.com/Login load.

Commenting out of "import resources.lib.pyOpenSSL" in default.py allows netflixbmc to work again. (with the insecureplatformwarning the log again)

One possible solution would be to add a enable control in netflixbmc configuration that would switch off pyOpenSSL by users that have problems. Also suppressing log spamming from insecureplatformwarning when ssl not enables. Ultimately kodi will have ssl support and we may remove this code.

Andrew, I don't have time available to hunt this problem down, if you do, great, but for me this solution is the best compromise.

andrewleech commented 9 years ago

Yeah adding a setting to explicitly disable it is a good suggestion. I thought the try/except block in place would have handled these issues but there's clearly something awry with that. There is no binary module for win x64 currently, although I do have an x64 system that I can use to build it, so I'll do that as well.

Kodi won't be able to add support internally unless they either: a) add the same binary modules to the set of ones built in b) add a robust way for plugins to use any binary python modules c) switch to python3, which would bring it's own compatibility issues.

As a teaser.... I've gone a very different route for my hulu plugin, not using requests at all. Instead I've got a background service script communicating with a persistent copy of chrome in the background via selenium & chromedriver. I'm using injected ajax calls to do all basic GET requests for html/xml/json queries, and then bring chrome to the foreground for playback, before sending it behind kodi when finished watching. This does have some overheads in the service->chromedriver->chrome communication chain, but I think this is pretty well offset by chrome's optimisations and caching, and certainly ssl and the like will always work in chrome. It also brings in the possibility of using hola rather than paying for geo-unblocking services. The basic framework is up and running and looking good, but there's a bit of work to go to polish it and make it stable. Once that's done though it'll be easy enough to being across to netflixbmc.

insertnamehere1 commented 9 years ago

I'll make the changes.

The Hulu plugin sounds sweet. Good to know you're bringing it back to Netflixbmc.

insertnamehere1 commented 9 years ago

Changes made. Should make a few people happy(er)