[NEED TO KNOW] URLResolver Releases - 2.7.0

Eldorado

Moderator
Staff member
May 7, 2012
990
0
16
This thread is meant to report on updates to URLResolver

This is NOT a support/how to thread.

URLResolver updates are pushed out to you automatically, there is nothing you need to do to get these versions.

With the release of Helix, users are now able to see updates to URLResolver the same as any other addon, as well are now able to manage the install update/rollback by going to:

System -> Addons -> Enabled Addons -> Addon Libraries


Version 2.7.0
- Code Base Changes:
- Speed enhancements:
- Don't load into mem all resolvers on init, load only when used
- Only build settings.xml on first init after initial install or new version
- Verify final link doesn't give http error before returning
- Resolvers Added:
- RoyalVids
- VShare
- CloudyVideos
- Streamin.to
- Resolvers Fixed/Updated:
- MovReel
- BillionUploads
- Novamov
- Premiumize
- TheVideo.me
- VidSpot
- VeeHD
- Vidbull
- Removed dead resolvers

Version 2.6.0
- Code Base Changes:
- Allow host validation to work with universal resolvers
- Resolvers Added:
- Realvid
- Letwatch
- Speedvideo
- Videohut
- Resolvers Fixed/Updated:
- Vidbull
- VeeHD
- VODLocker (speed improvement)
- MightyUpload
- Exashare
- Tunepk

Latest Updates:
Version 2.5.0
- Added Teramixer
- Added Exashare
- Fixed 180Upload
- Fixed BillionUploads
- Fixed HugeFiles
- Fixed VidPlay
- Fixed MovDivx
- Fixed ShareSix
- Fixed Vodlocker
- Fixed AllMyVideos
- Fixed Played.To
- Small fixes to Sockshare captcha

Version 2.4.0
- Reverted back to using t0mm0.common as addon.common is creating naming issues

Version 2.3.0
- Added Cloudy
- Fixed Divxstage
- Fixed Ecostream
- Fixed HostingBulk
- Fixed Movshare
- Fixed TheFile
- Fixed Vidxden
- Updated Putlocker/Firedrive to check for more variations
- Converted URLResolver completely to use addon.common instead of t0mm0.common


Manual Install

If for whatever reason you need to manually install URLResolver then do so *ONLY* from the XBMC.org repository to ensure you are getting the latest release

Link - http://mirrors.xbmc.org/addons/

You can add this link the same way you added Fusion via System -> File Manager

DO NOT install from my GIT unless you are comfortable doing so and knowing that you might be installing unfinished code not suitable for public release

How can you help?

If you wish to participate in fixes and creating new resolvers please submit them to my github

https://github.com/Eldorados/script.module.urlresolver

How-to create a resolver - http://t0mm0.github.com/xbmc-urlresolver/tutorials/resolverplugin/code.html
 
Last edited:

Eldorado

Moderator
Staff member
May 7, 2012
990
0
16
Lets keep this thread clean of newb type questions.. eg 'how do I update'

Report VERIFIED broken resolvers with details and links, don't assume they are broken.. VERIFY that they are indeed broke

Request for valid and useful resolvers, I will keep a list. Don't request for any random file hosters that you can think of, make them worthwhile and useful to majority of users. We won't waste time on resolvers that are rarely used in addons unless you are willing to create them yourself.

Don't make me delete posts!!
 
Last edited:

j0anita

Developer
Sep 1, 2012
169
0
0
Portugal
Code:
def videomega(url):
        req = urllib2.Request(url)
        req.add_header('User-Agent', user_agent)
        response = urllib2.urlopen(req)
        link=response.read()
        response.close()
        dialog = xbmcgui.Dialog()
        try:
                encodedurl=re.compile('unescape.+?"(.+?)"').findall(link)[0]
        except:
                ok = dialog.ok("wareztuga.tv",'This file is not available on VideoMega.')
                return
        encodedurl=re.compile('unescape.+?"(.+?)"').findall(link)
        teste=urllib.unquote(encodedurl[0])
        mega=re.compile('file: "(.+?)"').findall(teste)
        for url in mega:
                comecarvideo(srt,url,name,thumbnail)
This resolves embed videomega links.
 

j0anita

Developer
Sep 1, 2012
169
0
0
Portugal
This is a resolver for bayfiles. It's working on my plugin :) IMPORTANT: you must set listitem.setProperty('mimetype', 'video/x-msvideo')
and listitem.setProperty('IsPlayable', 'true').

Bayfiles won't allow to advance through the movie, unless its loaded!!! It will crash the movie.


Code:
def bayfiles(url,srt,name,thumbnail):
    try:
                req = urllib2.Request(url)
                req.add_header('User-Agent', user_agent)
                response = urllib2.urlopen(req)
                link=response.read()
                response.close()
                match=re.compile('<div id="content-inner">\n\t\t\n\t\t\t\t<div style="width: 900px; margin: auto; padding-top: 25px; text-align: center;">').findall(link)[0]
    except:
                try:
                      match2=re.compile('<div id="content-inner">\n\t\t\t\t<center><strong style="color:#B22B13;">Your IP (.+?) has recently downloaded a file. Upgrade to premium or wait (.+?) min.</strong>').findall(link)[0]
                      for ip, time in match2:
                            dialog = xbmcgui.Dialog()
                            ok = dialog.ok("wareztuga.tv",' You just downloaded a file with this IP address', ' (' + ip + '). You have to wait ' + time + ' segundos.')
                            return
                except:
                      match3=re.compile('<div id="content-inner">\n\t\t\t\t<center><strong style="color:#B22B13;">Your IP (.+?) is already downloading. Upgrade to premium or wait.</strong>').findall(link)
                      for ip in match3:
                            dialog = xbmcgui.Dialog()
                            ok = dialog.ok("wareztuga.tv",' Your downloading with this IP', ' (' + ip + ')')
                            return
    video_urls = []

    data=link
    try:
        vfid = re.compile('var vfid = ([^;]+);').findall(data)[0]
    except:
        print "Vfid não encontrado"
        return ''
    try:
        delay = re.compile('var delay = ([^;]+);').findall(data)[0]
        delay = int(delay)
    except:
        delay = 300

    t = millis()
#   http://bayfiles.com/ajax_download?_=1336330599281&action=startTimer&vfid=2174049 example timerurl
    url_token = "http://bayfiles.com/ajax_download?_=%s&action=startTimer&vfid=%s"%(t,vfid)
    req = urllib2.Request(url_token)
    req.add_header('User-Agent', user_agent)
    response = urllib2.urlopen(req)
    token1=response.read()
    response.close()
    datajson = load_json(token1)
    if datajson['set']==True:
        token=datajson['token']
        resultado = handle_wait(delay,"wareztuga.tv","Connecting to Bayfiles (Free)")

        url_ajax = 'http://bayfiles.com/ajax_download'
        post = "action=getLink&vfid=%s&token=%s" %(vfid,token)
        data= url_ajax + '?' + post
        req = urllib2.Request(data)
        req.add_header('User-Agent', user_agent)
        response = urllib2.urlopen(req)
        finaldata=response.read()    
        patron = 'onclick="javascript:window.location.href = \'(.+?)\''
        matches = re.compile(patron,re.DOTALL).findall(finaldata)
        funcional = matches[0] #final url mp4
        comecarvideo(srt,funcional,name,thumbnail)

def millis():
    import time as time_ #make sure we don't override time
    return int(round(time_.time() * 1000))

def load_json(data):
    # callback to transform json string values to utf8
    def to_utf8(dct):
        rdct = {}
        for k, v in dct.items() :
            if isinstance(v, (str, unicode)) :
                rdct[k] = v.encode('utf8', 'ignore')
            else :
                rdct[k] = v
        return rdct
    try :        
        from lib import simplejson
        json_data = simplejson.loads(data, object_hook=to_utf8)
        return json_data
    except:
        try:
            import json
            json_data = json.loads(data, object_hook=to_utf8)
            return json_data
        except:
            import sys
            for line in sys.exc_info():
                logger.error("%s" % line)
    return None

def handle_wait(time_to_wait,title,text):
    #logger.info ("[xbmctools.py] handle_wait(time_to_wait=%d)" % time_to_wait)
    #import xbmc,xbmcgui
    espera = xbmcgui.DialogProgress()
    ret = espera.create(' '+title)

    secs=0
    percent=0
    increment = int(100 / time_to_wait)

    cancelled = False
    while secs < time_to_wait:
        secs = secs + 1
        percent = increment*secs
        secs_left = str((time_to_wait - secs))
        remaining_display = ' Espera '+secs_left+' segundos para que o vídeo comece.'
        espera.update(percent,' '+text,remaining_display)
        xbmc.sleep(1000)
        if (espera.iscanceled()):
             cancelled = True
             break

    if cancelled == True:     
#         logger.info ('Espera cancelada')
         return False
    else:
#         logger.info ('Espera finalizada')
         return True
 
Last edited:

jas0npc

Banned
May 5, 2012
2,449
0
0
UK
:) Have a look at the link though buddy, you may be able to convert it to a resolver plugin yourself:) after all you did the hardwork
 

jas0npc

Banned
May 5, 2012
2,449
0
0
UK
Re: URLResolver Releases - 2.0.5/1.0.5

No and neither was the Videomega. :p

Jase I have already coded Bayfiles, Videomega and a few others the PYLOAD source is readily available and contains so many easy to convert resolvers.
The base code is identical ;)

https://bitbucket.org/spoob/pyload/src/d23f9c796805/module/plugins/hoster/

https://bitbucket.org/jorgenio/jdownloader/src/d3d3853c647c/src/jd/plugins/hoster?at=master
Vin you are a machine.
Thanks from all of us brother.
 

nothere

Banned
Nov 25, 2012
1,036
0
0
In expectation this will be deleted....can I ask a question....

When do these update automatically? The only reason I ask is I'm still running 1.0.4. I've updated them manually now via git but never received the update automatically.
 

Eldorado

Moderator
Staff member
May 7, 2012
990
0
16
The XBMC guys haven't accepted 1.0.5 yet, I assumed they would have by now..

It gets pushed out automatically at the same time as any other addon
 

Eldorado

Moderator
Staff member
May 7, 2012
990
0
16
@voinage

I think I might have to rollback the changes to putlocker unless we do some changes, I'm noticing a huge drop in response and speed from putlocker sources with the new code, likely due to us grabbing the avi links now and we're seeing that these guys really aren't so fast with free accounts :)

Can we add back the option for putlocker pro and make the option of grabbing the AVI/MP4 optional based on a setting? Make the default to grab the flv as before

Let me know what you think or if you have other ideas

Edit - I had some time so I was able to modify this, I brought back the previous code with your user agent addition and made the grab of the original avi/mp4 file optional.. good speeds back on putlocker again :)

Since x.0.5 hasn't been pushed out yet I'll try to get it included there and pushed out ASAP
 
Last edited:

halfman

New member
May 7, 2012
28
0
0
Re: URLResolver Releases - 2.0.5/1.0.5

I am also noticing a huge slowdown with putlocker, wont play anymore than a minute max without buffer...never had any problems with putlocker and flv files before.
 

tuxen

Banned
Mar 23, 2012
2,235
0
0
Denmark
No problems here maybe a option could be made which defaults to flv so you at least have the opportunity?.. I have a request for capcha resolvers also; could the images be made a liiittle smaller not much but with confluence the keyboard overlaps the image so you can not see the capcha behind.
 
Last edited:

j0anita

Developer
Sep 1, 2012
169
0
0
Portugal
When they send a file to a putlocker, the website converts the file the mp4/avi to a flv (losing quality). voinage changed the code to grab the original file (mp4/avi).

The file is bigger, slower but has more quality, because its the original file. Click in O and you see the h264 or xvid codec being used and not the flv. ;)
 

Eldorado

Moderator
Staff member
May 7, 2012
990
0
16
I'll try to get a version pushed out today with the update.. I'm starting to get phone calls about putlocker not working now :)