def mininova__search( _search, minseed = 1 ): #Search mininova.org and return results _search = bhq.r_dict( _search, { '.':' ', '-':' ' } ) _url = urllib.quote('www.mininova.org/search/%s/4/seeds' % ( _search )) html = bhq.getHTML( 'http://%s' % (_url) ) print 'scenereleases::info: searching mininova ('+_url+')' if '<h1>No results for ' in html: return 0 regx = '<td>([0-9]{2}.+?[A-Z][a-z]{2}.+?[0-9]{2})</td>.*?"/get/([^"]+?)".+?</a><a[^>]+?>([^<]+?)<.*?align="right">([^<]+?)</td>.+?([0-9]+?)<.+?([0-9]+?)<' mn = re.compile(regx).findall(html) mn = eval(str(mn).replace(' ',' ')) if not mn: return 0 _rslt = [] for date, file, title, size, seed, leech in mn: mn = Torrent() if int(seed) >= minseed: mn.title = title mn.seed = seed mn.file = 'torrent://mininova.org/get/%s' % ( file ) mn.size = size mn.leech = leech mn.date = date mn.site = 'mininova' _rslt.append(mn) return _rslt
def list_categories(): break1 = '<li class="cat-item cat-item-28">' break2 = '<li class="cat-item cat-item-12">' html = bhq.getHTML('http://scenereleases.info/', break1, break2).replace('\n', '') cats = re.compile('title=\"View.*?- (.+?)\".+?href=\"(.+?)\"').findall(html) for cat,link in cats: boxee_adddir(cat,link.replace('/feed', ''),1)
def piratebay__search( _search, minseed = 1 ): #Search thepiratebay.org and return results _search = bhq.r_dict( _search, { '.':' ', '-':' ' } ) _url = urllib.quote('thepiratebay.org/search/%s/0/7/200' % ( _search )) html = bhq.getHTML( 'http://%s' % (_url) ) print 'scenereleases::info: searching piratebay ('+_url+')' if 'No hits. Try adding an asterisk' in html: return 0 regx = '<a .+?="detLink"[^>]+?>([^<]+?)</a>[^>]+?td>\s.+?>(.+?[0-9]{2}:[0-9]{2})</td>\s.+?<a.+?href="([^"]+?)".*?\s<td align="right">([^<]+?[G|M]iB).+?\s<td[^>]+?>([0-9]+?)<.+?\s.+?>([0-9]+?)<' pb = re.compile(regx).findall(html) pb = eval(str(pb).replace(' ',' ')) if not pb: return 0 _rslt = [] for title, date, file, size, seed, leech in pb: pb = Torrent() if int(seed) >= minseed: pb.title = title pb.seed = seed pb.file = file.replace('http://', 'torrent://') pb.size = size pb.leech = leech pb.date = date pb.site = 'thepiratebay' _rslt.append(pb) return _rslt
def mininova__search(_search, minseed=1): #Search mininova.org and return results _search = bhq.r_dict(_search, {'.': ' ', '-': ' '}) _url = urllib.quote('www.mininova.org/search/%s/4/seeds' % (_search)) html = bhq.getHTML('http://%s' % (_url)) print 'scenereleases::info: searching mininova (' + _url + ')' if '<h1>No results for ' in html: return 0 regx = '<td>([0-9]{2}.+?[A-Z][a-z]{2}.+?[0-9]{2})</td>.*?"/get/([^"]+?)".+?</a><a[^>]+?>([^<]+?)<.*?align="right">([^<]+?)</td>.+?([0-9]+?)<.+?([0-9]+?)<' mn = re.compile(regx).findall(html) mn = eval(str(mn).replace(' ', ' ')) if not mn: return 0 _rslt = [] for date, file, title, size, seed, leech in mn: mn = Torrent() if int(seed) >= minseed: mn.title = title mn.seed = seed mn.file = 'torrent://mininova.org/get/%s' % (file) mn.size = size mn.leech = leech mn.date = date mn.site = 'mininova' _rslt.append(mn) return _rslt
def piratebay__search(_search, minseed=1): #Search thepiratebay.org and return results _search = bhq.r_dict(_search, {'.': ' ', '-': ' '}) _url = urllib.quote('thepiratebay.org/search/%s/0/7/200' % (_search)) html = bhq.getHTML('http://%s' % (_url)) print 'scenereleases::info: searching piratebay (' + _url + ')' if 'No hits. Try adding an asterisk' in html: return 0 regx = '<a .+?="detLink"[^>]+?>([^<]+?)</a>[^>]+?td>\s.+?>(.+?[0-9]{2}:[0-9]{2})</td>\s.+?<a.+?href="([^"]+?)".*?\s<td align="right">([^<]+?[G|M]iB).+?\s<td[^>]+?>([0-9]+?)<.+?\s.+?>([0-9]+?)<' pb = re.compile(regx).findall(html) pb = eval(str(pb).replace(' ', ' ')) if not pb: return 0 _rslt = [] for title, date, file, size, seed, leech in pb: pb = Torrent() if int(seed) >= minseed: pb.title = title pb.seed = seed pb.file = file.replace('http://', 'torrent://') pb.size = size pb.leech = leech pb.date = date pb.site = 'thepiratebay' _rslt.append(pb) return _rslt
def post__links(url): imgnext = imageDir+'next.png' _html = bhq.getHTML(url).replace('\n', '') _posts = re.compile('id="post-(.+?)".+?>(.+?)<span class="meta-comments">').findall(_html) for pnum, html in _posts: try: title = re.compile('>(.+?)</a>').findall(html)[0] thumb = re.compile('src="(.+?)"').findall(html)[0] boxee_adddir( title, post__pass(html), 2, thumb ) except: pass try: x = re.compile('<div class="wp-pagenavi">(.+?)</div>').findall(_html)[0] next = re.compile('<a href=\"(.+?)\".+?</a>').findall(x)[-2] boxee_adddir('', next, 1, imgnext) except: pass
def reactor__search(_search, minseed=1): #Search torrentreactor and return results _search = bhq.r_dict(_search, {'.': '+', '-': '+', ' ': '+'}) _url = 'www.torrentreactor.net/search.php?search=&words=%s&cid=5&sid=&type=1&exclude=&orderby=a.seeds&asc=0&x=33&y=8' % ( _search) print 'http://%s' % (_url) html = bhq.getHTML('http://%s' % (_url), 'Torrentreactor search results:') html = bhq.r_dict(html, {'\n': '', '\t': ''}).strip() print 'scenereleases::info: searching torrentreactor (' + _url + ')' if 'No results.. "' in html: return 0 regx = '<td class="center">([^<]+?)</td>.+?href="http://([^"]+?)".+?<td>([^<]+?)</td><td>([^<]+?)</td><td>([^<]+?)</td>' tr = re.compile(regx).findall(html) tr = eval(str(tr).replace(' ', ' ')) if not tr: return 0 _rslt = [] for date, file, size, seed, leech in tr: tr = Torrent() if int(seed) >= minseed: tr.title = urllib.unquote( file.split(';name=')[-1].replace('+', ' ')) tr.seed = seed tr.file = 'torrent://%s' % (file) tr.size = size tr.leech = leech tr.date = date tr.site = 'reactor' _rslt.append(tr) return _rslt
def reactor__search( _search, minseed = 1 ): #Search torrentreactor and return results _search = bhq.r_dict( _search, { '.':'+', '-':'+', ' ':'+' } ) _url = 'www.torrentreactor.net/search.php?search=&words=%s&cid=5&sid=&type=1&exclude=&orderby=a.seeds&asc=0&x=33&y=8' % ( _search ) print 'http://%s' % (_url) html = bhq.getHTML( 'http://%s' % (_url), 'Torrentreactor search results:' ) html = bhq.r_dict( html, { '\n':'', '\t':'' } ).strip() print 'scenereleases::info: searching torrentreactor ('+_url+')' if 'No results.. "' in html: return 0 regx = '<td class="center">([^<]+?)</td>.+?href="http://([^"]+?)".+?<td>([^<]+?)</td><td>([^<]+?)</td><td>([^<]+?)</td>' tr = re.compile(regx).findall(html) tr = eval(str(tr).replace(' ',' ')) if not tr: return 0 _rslt = [] for date, file, size, seed, leech in tr: tr = Torrent() if int(seed) >= minseed: tr.title = urllib.unquote(file.split(';name=')[-1].replace('+',' ')) tr.seed = seed tr.file = 'torrent://%s' % ( file ) tr.size = size tr.leech = leech tr.date = date tr.site = 'reactor' _rslt.append(tr) return _rslt