2013-02-24, 20:40
http://tunlr.net/ Tunlr is a free dns proxy, for getting videos in geo locked sites in the UK and US.
http://tunlr.net/faq/supported-services-players/ - supported players
Here is the code to use tunlr in an addon, I have used bbc iplayer as an example:
Original code here https://github.com/oe-alliance/oe-allian...iplayer.py
You need import dnspython http://www.dnspython.org/
What this code does is, when it is detected that you have an outside UK IP, it uses tunlr as your dns server. Then it turns it off again once the play url is found. And it will play using your own dns. So it not wasting tunlr dns unless it needs to.
http://tunlr.net/faq/supported-services-players/ - supported players
Here is the code to use tunlr in an addon, I have used bbc iplayer as an example:
Original code here https://github.com/oe-alliance/oe-allian...iplayer.py
You need import dnspython http://www.dnspython.org/
Code:
from dns.resolver import Resolver
Code:
if html1.find('notukerror') > 0:
self.notUK = 1
print "Non UK Address"
opener = urllib2.build_opener(MyHTTPHandler)
old_opener = urllib2._opener
urllib2.install_opener (opener)
url2 = 'http://www.bbc.co.uk/mediaselector/4/mtis/stream/'+links
#print 'url2',url2
req = urllib2.Request(url2)
req.add_header('User-Agent', 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-GB; rv:1.9.0.3 Gecko/2008092417 Firefox/3.0.3')
response = urllib2.urlopen(req)
html1 = str(response.read())
response.close()
urllib2.install_opener (old_opener)
Code:
class MyHTTPConnection(httplib.HTTPConnection):
def connect (self):
resolver = Resolver()
resolver.nameservers = ['142.54.177.158'] #tunlr dns address
answer = resolver.query(self.host,'A')
self.host = answer.rrset.items[0].address
self.sock = socket.create_connection ((self.host, self.port))
class MyHTTPHandler(urllib2.HTTPHandler):
def http_open(self, req):
return self.do_open (MyHTTPConnection, req)
What this code does is, when it is detected that you have an outside UK IP, it uses tunlr as your dns server. Then it turns it off again once the play url is found. And it will play using your own dns. So it not wasting tunlr dns unless it needs to.