update
parent
4da09c6751
commit
49a24bec2c
27
Core.py
27
Core.py
|
@ -272,12 +272,14 @@ class Core:
|
|||
def test(self, params={}):
|
||||
#db=DownloadDB()
|
||||
#db.add(u'XXX2', 'file', json.dumps({'seeds':1,'leechers':1}), 20)
|
||||
#url='magnet:?xt=urn:btih:MZLDDZU5MWZWICIGQN6YDVAXJNNISU5W&dn=Jimmy.Fallon.2015.01.09.Don.Cheadle.HDTV.x264-CROOKS&tr=udp://tracker.openbittorrent.com:80&tr=udp://tracker.publicbt.com:80&tr=udp://tracker.istole.it:80&tr=udp://open.demonii.com:80&tr=udp://tracker.coppersurfer.tk:80'
|
||||
#url='magnet:?xt=urn:btih:6698E0950DCD257A6B03AF2E8B068B7FF9D4619D&dn=game+of+thrones+season+2+720p+bluray+x264+shaanig&tr=udp%3A%2F%2Fcoppersurfer.tk%3A6969%2Fannounce&tr=udp%3A%2F%2Fopen.demonii.com%3A1337'
|
||||
#filename='D:\\torrents\\Torrenter\\torrents\\Jimmy.Fallon.2015.01.09.Don.Cheadle.HDTV.x264-CROOKS.mp4.torrent'
|
||||
#torrent = Downloader.Torrent(self.userStorageDirectory, torrentFilesDirectory=self.torrentFilesDirectory)
|
||||
#self.__settings__.setSetting("lastTorrent", torrent.saveTorrent(filename))
|
||||
#torrent.downloadProcess()
|
||||
self.DownloadStatus()
|
||||
#self.DownloadStatus()
|
||||
url='http://torcache.net/torrent/6698E0950DCD257A6B03AF2E8B068B7FF9D4619D.torrent?title=[kickass.to]game.of.thrones.season.2.720p.bluray.x264.shaanig'
|
||||
#xbmc.executebuiltin('xbmc.RunPlugin("plugin://plugin.video.torrenter/?action=openTorrent&external=ThePirateBaySe&url=ThePirateBaySe%3A%3A'+urllib.quote_plus(url)+'¬_download_only=True")')
|
||||
|
||||
def DownloadStatus(self, params={}):
|
||||
db = DownloadDB()
|
||||
|
@ -1350,6 +1352,27 @@ class Core:
|
|||
print 'Unable to save torrent file from "' + url + '" to "' + torrentFile + '" in Torrent::saveTorrent'
|
||||
return
|
||||
|
||||
def playSTRM(self, params={}):
|
||||
get = params.get
|
||||
xbmc.executebuiltin('xbmc.Playlist.Clear')
|
||||
url = unquote(get("url"),None)
|
||||
if url:
|
||||
self.__settings__.setSetting("lastTorrentUrl", url)
|
||||
torrent = Downloader.Torrent(self.userStorageDirectory, torrentFilesDirectory=self.torrentFilesDirectory)
|
||||
if not torrent: torrent = Downloader.Torrent(self.userStorageDirectory,
|
||||
torrentFilesDirectory=self.torrentFilesDirectory)
|
||||
self.__settings__.setSetting("lastTorrent", torrent.saveTorrent(url))
|
||||
contentList = []
|
||||
for filedict in torrent.getContentList():
|
||||
fileTitle = filedict.get('title')
|
||||
if filedict.get('size'):
|
||||
fileTitle += ' [%d MB]' % (filedict.get('size') / 1024 / 1024)
|
||||
contentList.append((filedict.get('size'), self.unescape(fileTitle), str(filedict.get('ind'))))
|
||||
if len(contentList)>0:
|
||||
contentList = sorted(contentList, key=lambda x: x[0], reverse=True)
|
||||
#self.playTorrent({'url':contentList[0][2]})
|
||||
xbmc.executebuiltin('xbmc.RunPlugin("plugin://plugin.video.torrenter/?action=playTorrent&url='+contentList[0][2]+'")')
|
||||
|
||||
def openTorrent(self, params={}):
|
||||
get = params.get
|
||||
external = unquote(get("external"),None)
|
||||
|
|
|
@ -176,10 +176,10 @@ class Libtorrent:
|
|||
torrentInfo = self.getMagnetInfo()
|
||||
try:
|
||||
torrentFile = self.lt.create_torrent(torrentInfo)
|
||||
baseName = file_encode(os.path.basename(self.storageDirectory + os.sep + torrentInfo.files()[0].path))
|
||||
baseName = os.path.basename(self.storageDirectory + os.sep + torrentInfo.files()[0].path)
|
||||
if not xbmcvfs.exists(self.torrentFilesPath):
|
||||
xbmcvfs.mkdirs(self.torrentFilesPath)
|
||||
self.torrentFile = self.torrentFilesPath + baseName + '.torrent'
|
||||
self.torrentFile = self.torrentFilesPath + self.md5(baseName) + '.torrent'
|
||||
torentFileHandler = xbmcvfs.File(self.torrentFile, "w+b")
|
||||
torentFileHandler.write(self.lt.bencode(torrentFile.generate()))
|
||||
torentFileHandler.close()
|
||||
|
|
|
@ -166,7 +166,7 @@ class TorrentPlayer(xbmc.Player):
|
|||
|
||||
def init(self):
|
||||
self.next_dl = True if self.__settings__.getSetting('next_dl') == 'true' and self.ids_video else False
|
||||
print str(self.next_dl)
|
||||
print '[TorrentPlayer]: init - '+str(self.next_dl)
|
||||
self.next_contentId = False
|
||||
self.display_name = ''
|
||||
self.downloadedSize = 0
|
||||
|
@ -306,7 +306,12 @@ class TorrentPlayer(xbmc.Player):
|
|||
xbmc.sleep(300)
|
||||
|
||||
if response:
|
||||
xbmc.Player().play(path, listitem)
|
||||
#xbmc.Player().play(path, listitem)
|
||||
playlist = xbmc.PlayList(xbmc.PLAYLIST_VIDEO)
|
||||
playlist.clear()
|
||||
playlist.add(path, listitem)
|
||||
xbmc.Player().play(playlist)
|
||||
|
||||
xbmc.sleep(3000)#very important, do not edit this, podavan
|
||||
return True
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<addon id="plugin.video.torrenter" name="Torrenter" version="2.2.3" provider-name="vadim.skorba, DiMartino">
|
||||
<addon id="plugin.video.torrenter" name="Torrenter" version="2.2.4" provider-name="vadim.skorba, DiMartino">
|
||||
<requires>
|
||||
<import addon="xbmc.python" version="2.1.0"/>
|
||||
<import addon="script.module.libtorrent"/>
|
||||
|
|
|
@ -1,4 +1,9 @@
|
|||
[B]Version 2.2.2[/B]
|
||||
[B]Version 2.2.3[/B]
|
||||
[+] Проигрыватель: Добавлена возможность запускать через .strm файлы (plugin://plugin.video.torrenter/?action=playSTRM&url=URL_ENCODED_MAGNET_PATH_HTTP)
|
||||
|
||||
[B]Version 2.2.2[/B]
|
||||
[+] Списки Медиа: Обновлен KickAssSo (by GriffeyJuni0r)
|
||||
[+] Поиск: Исправлен RuTor
|
||||
[+] Поиск: Исправлен RuTrackerOrg, T411FR
|
||||
|
||||
[B]Version 2.2.1[/B]
|
||||
|
|
|
@ -23,18 +23,14 @@ from BeautifulSoup import BeautifulSoup
|
|||
|
||||
class KickAssSo(Content.Content):
|
||||
category_dict = {
|
||||
'hot': ('Most Recent', '/new/', {'page': '/new/%d/', 'increase': 1, 'second_page': 2,
|
||||
'sort':[{'name':'by Seeders', 'url_after':'?field=seeders&sorder=desc'},
|
||||
{'name':'by Date', 'url_after':'?field=time_add&sorder=desc'}]}),
|
||||
'hot': ('Most Recent', '/new/?field=seeders&sorder=desc', {'page': '/new/%d/?field=seeders&sorder=desc', 'increase': 1, 'second_page': 2,
|
||||
' ':[{'name':' ', 'url_after':'?field=seeders&sorder=desc'}]}),
|
||||
'anime': ('Anime', '/anime/', {'page': '/anime/%d/', 'increase': 1, 'second_page': 2,
|
||||
'sort':[{'name':'by Seeders', 'url_after':'?field=seeders&sorder=desc'},
|
||||
{'name':'by Date', 'url_after':'?field=time_add&sorder=desc'}]}),
|
||||
'tvshows': ('TV Shows', '/tv/', {'page': '/tv/%d/', 'increase': 1, 'second_page': 2,
|
||||
'sort':[{'name':'by Seeders', 'url_after':'?field=seeders&sorder=desc'},
|
||||
{'name':'by Date', 'url_after':'?field=time_add&sorder=desc'}]}),
|
||||
'movies': ('Movies', '/movies/', {'page': '/movies/%d/', 'increase': 1, 'second_page': 2,
|
||||
'sort':[{'name':'by Seeders', 'url_after':'?field=seeders&sorder=desc'},
|
||||
{'name':'by Date', 'url_after':'?field=time_add&sorder=desc'}]}),
|
||||
' ':[{'name':' ', 'url_after':'?field=seeders&sorder=desc'}]}),
|
||||
'tvshows': ('TV Shows', '/tv/?field=seeders&sorder=desc', {'page': '/tv/%d/?field=seeders&sorder=desc', 'increase': 1, 'second_page': 2,
|
||||
' ':[{'name':' ', 'url_after':'?field=seeders&sorder=desc'}]}),
|
||||
'movies': ('Movies', '/movies/?field=seeders&sorder=desc', {'page': '/movies/%d/?field=seeders&sorder=desc', 'increase': 1, 'second_page': 2,
|
||||
' ':[{'name':' ', 'url_after':'?field=seeders&sorder=desc'}]}),
|
||||
}
|
||||
|
||||
baseurl = "http://kickass.to"
|
||||
|
|
|
@ -87,15 +87,17 @@ class RuTorOrg(SearcherABC.SearcherABC):
|
|||
('Cookie', str(sys.modules["__main__"].__settings__.getSetting("rutor-auth")))]
|
||||
response = self.makeRequest(url, headers=headers)
|
||||
|
||||
#print response
|
||||
|
||||
if None != response and 0 < len(response):
|
||||
dat = re.compile(
|
||||
'<tr class="[tg].+?<a.+?href="(/download/\d+)">.+?<a href=".+?">.+?<a href=".+?">(.+?)</a></td>.+?<td align="right">(\d*?\..+? .+?)</td>.+?<img .+?alt="S".+?> (\d+)</span>.+?alt="L".+?> (\d+)',
|
||||
'<tr class="[tg].+?<a.+?href="(.+?download/\d+)">.+?<a href=".+?">.+?<a href=".+?">(.+?)</a></td>.+?<td align="right">(\d*?\..+? .+?)</td>.+?<img .+?alt="S".+?> (\d+)</span>.+?alt="L".+?> (\d+)',
|
||||
re.DOTALL).findall(response)
|
||||
if dat and len(dat) > 0:
|
||||
for (link, title, size, seeds, leechers) in dat:
|
||||
torrentTitle = title.strip() #"%s [S\L: %s\%s]" % (title, seeds, leechers)
|
||||
size = size.replace(' ', ' ')
|
||||
link='http://zerkalo-rutor.org'+link
|
||||
if link[0]=='/': link='http://zerkalo-rutor.org'+link
|
||||
image = sys.modules["__main__"].__root__ + self.searchIcon
|
||||
filesList.append((
|
||||
int(int(self.sourceWeight) * int(seeds)),
|
||||
|
|
Loading…
Reference in New Issue