extratorrent fix

pull/1/head
DiMartinoX 2015-01-09 23:18:55 +03:00
parent 004ba66eeb
commit fb00cbae7d
4 changed files with 164 additions and 30 deletions

View File

@ -1,11 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ChangeListManager">
<list default="true" id="56e91349-2444-4553-bc78-90c2bab49e9c" name="Default" comment="New Read me?">
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/Core.py" afterPath="$PROJECT_DIR$/Core.py" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/resources/searchers/KickAssSo.py" afterPath="$PROJECT_DIR$/resources/searchers/KickAssSo.py" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/Localization.py" afterPath="$PROJECT_DIR$/Localization.py" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/resources/settings.xml" afterPath="$PROJECT_DIR$/resources/settings.xml" />
<list default="true" id="56e91349-2444-4553-bc78-90c2bab49e9c" name="Default" comment="">
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/resources/searchers/ExtraTorrent.py" afterPath="$PROJECT_DIR$/resources/searchers/ExtraTorrent.py" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/README.txt" afterPath="$PROJECT_DIR$/README.txt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/cal.py" afterPath="$PROJECT_DIR$/cal.py" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/.idea/workspace.xml" afterPath="$PROJECT_DIR$/.idea/workspace.xml" />
</list>
<ignored path="plugin.video.torrenter.iws" />
@ -37,10 +36,10 @@
<splitter split-orientation="horizontal" split-proportion="0.5">
<split-first>
<leaf>
<file leaf-file-name="Core.py" pinned="false" current="true" current-in-tab="true">
<file leaf-file-name="Core.py" pinned="false" current="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/Core.py">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.64006513" vertical-offset="1919" max-vertical-offset="3621">
<state vertical-scroll-proportion="-14.035714" vertical-offset="1919" max-vertical-offset="3621">
<caret line="1472" column="26" selection-start-line="1472" selection-start-column="26" selection-end-line="1472" selection-end-column="26" />
<folding>
<element signature="e#24#781#1" expanded="false" />
@ -86,6 +85,46 @@
</provider>
</entry>
</file>
<file leaf-file-name="ExtraTorrent.py" pinned="false" current="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/resources/searchers/ExtraTorrent.py">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0" vertical-offset="893" max-vertical-offset="1802">
<caret line="81" column="27" selection-start-line="81" selection-start-column="27" selection-end-line="81" selection-end-column="27" />
<folding />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="cal.py" pinned="false" current="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/cal.py">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0" vertical-offset="0" max-vertical-offset="272">
<caret line="11" column="93" selection-start-line="11" selection-start-column="93" selection-end-line="11" selection-end-column="93" />
<folding />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="README.txt" pinned="false" current="true" current-in-tab="true">
<entry file="file://$PROJECT_DIR$/README.txt">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.079563186" vertical-offset="0" max-vertical-offset="969">
<caret line="3" column="25" selection-start-line="3" selection-start-column="25" selection-end-line="3" selection-end-column="25" />
<folding />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="addon.xml" pinned="false" current="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/addon.xml">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0" vertical-offset="0" max-vertical-offset="510">
<caret line="14" column="266" selection-start-line="14" selection-start-column="31" selection-end-line="14" selection-end-column="266" />
<folding />
</state>
</provider>
</entry>
</file>
</leaf>
</split-first>
<split-second>
@ -103,7 +142,7 @@
<file leaf-file-name="Localization.py" pinned="false" current="false" current-in-tab="true">
<entry file="file://$PROJECT_DIR$/Localization.py">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.60280377" vertical-offset="2979" max-vertical-offset="3638">
<state vertical-scroll-proportion="0.91419655" vertical-offset="2780" max-vertical-offset="3638">
<caret line="198" column="41" selection-start-line="198" selection-start-column="41" selection-end-line="198" selection-end-column="41" />
<folding />
</state>
@ -125,11 +164,13 @@
<component name="IdeDocumentHistory">
<option name="changedFiles">
<list>
<option value="$PROJECT_DIR$/README.txt" />
<option value="$PROJECT_DIR$/resources/settings.xml" />
<option value="$PROJECT_DIR$/resources/searchers/KickAssSo.py" />
<option value="$PROJECT_DIR$/Localization.py" />
<option value="$PROJECT_DIR$/Core.py" />
<option value="$PROJECT_DIR$/resources/searchers/ExtraTorrent.py" />
<option value="$PROJECT_DIR$/cal.py" />
<option value="$PROJECT_DIR$/README.txt" />
</list>
</option>
</component>
@ -183,6 +224,38 @@
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
</PATH>
<PATH>
<PATH_ELEMENT>
<option name="myItemId" value="plugin.video.torrenter" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="plugin.video.torrenter" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="resources" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
</PATH>
<PATH>
<PATH_ELEMENT>
<option name="myItemId" value="plugin.video.torrenter" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="plugin.video.torrenter" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="resources" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="searchers" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
</PATH>
</subPane>
</pane>
<pane id="Scope" />
@ -191,8 +264,27 @@
<component name="PropertiesComponent">
<property name="last_opened_file_path" value="$PROJECT_DIR$" />
<property name="FullScreen" value="false" />
<property name="recentsLimit" value="5" />
</component>
<component name="RunManager">
<component name="RunManager" selected="Python.cal">
<configuration default="false" name="cal" type="PythonConfigurationType" factoryName="Python" temporary="true">
<option name="INTERPRETER_OPTIONS" value="" />
<option name="PARENT_ENVS" value="true" />
<envs>
<env name="PYTHONUNBUFFERED" value="1" />
</envs>
<option name="SDK_HOME" value="" />
<option name="WORKING_DIRECTORY" value="$PROJECT_DIR$" />
<option name="IS_MODULE_SDK" value="true" />
<option name="ADD_CONTENT_ROOTS" value="true" />
<option name="ADD_SOURCE_ROOTS" value="true" />
<module name="plugin.video.torrenter" />
<option name="SCRIPT_NAME" value="$PROJECT_DIR$/cal.py" />
<option name="PARAMETERS" value="" />
<RunnerSettings RunnerId="PythonRunner" />
<ConfigurationWrapper RunnerId="PythonRunner" />
<method />
</configuration>
<configuration default="true" type="tests" factoryName="py.test">
<option name="INTERPRETER_OPTIONS" value="" />
<option name="PARENT_ENVS" value="true" />
@ -314,7 +406,14 @@
<option name="USE_PATTERN" value="false" />
<method />
</configuration>
<list size="0" />
<list size="1">
<item index="0" class="java.lang.String" itemvalue="Python.cal" />
</list>
<recent_temporary>
<list size="1">
<item index="0" class="java.lang.String" itemvalue="Python.cal" />
</list>
</recent_temporary>
</component>
<component name="ShelveChangesManager" show_recycled="false" />
<component name="SvnConfiguration">
@ -338,7 +437,11 @@
<created>1420802271541</created>
<updated>1420802271541</updated>
</task>
<option name="localTasksCounter" value="4" />
<task id="LOCAL-00004" summary="New Read me?">
<created>1420833581950</created>
<updated>1420833581950</updated>
</task>
<option name="localTasksCounter" value="5" />
<servers />
</component>
<component name="TodoView" selected-index="0">
@ -363,9 +466,10 @@
</component>
<component name="ToolWindowManager">
<frame x="-8" y="-8" width="1936" height="1056" extended-state="6" />
<editor active="false" />
<editor active="true" />
<layout>
<window_info id="Changes" active="true" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" weight="0.24111111" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
<window_info id="Messages" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
<window_info id="Changes" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" weight="0.2413793" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
<window_info id="Terminal" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.3288889" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
<window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32925472" sideWeight="0.5" order="6" side_tool="false" content_ui="tabs" />
<window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
@ -373,13 +477,12 @@
<window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.4" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
<window_info id="Favorites" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="2" side_tool="true" content_ui="tabs" />
<window_info id="Event Log" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="7" side_tool="true" content_ui="tabs" />
<window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
<window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32925472" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
<window_info id="Version Control" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32925472" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
<window_info id="Cvs" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" sideWeight="0.5" order="4" side_tool="false" content_ui="tabs" />
<window_info id="Message" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
<window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
<window_info id="Ant Build" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
<window_info id="Messages" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
<window_info id="Commander" active="false" anchor="right" auto_hide="false" internal_type="SLIDING" type="SLIDING" visible="false" weight="0.4" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
<window_info id="Inspection" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.4" sideWeight="0.5" order="5" side_tool="false" content_ui="tabs" />
<window_info id="Hierarchy" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" sideWeight="0.5" order="2" side_tool="false" content_ui="combo" />
@ -407,13 +510,6 @@
<breakpoint-manager />
</component>
<component name="editorHistoryManager">
<entry file="file://$PROJECT_DIR$/README.txt">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.76869565" vertical-offset="0" max-vertical-offset="901">
<caret line="26" column="43" selection-start-line="26" selection-start-column="43" selection-end-line="26" selection-end-column="43" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/resources/language/English/strings.xml">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.33211678" vertical-offset="379" max-vertical-offset="935">
@ -440,7 +536,7 @@
</entry>
<entry file="file://$PROJECT_DIR$/Localization.py">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.60280377" vertical-offset="2979" max-vertical-offset="3638">
<state vertical-scroll-proportion="0.91419655" vertical-offset="2780" max-vertical-offset="3638">
<caret line="198" column="41" selection-start-line="198" selection-start-column="41" selection-end-line="198" selection-end-column="41" />
<folding />
</state>
@ -448,7 +544,7 @@
</entry>
<entry file="file://$PROJECT_DIR$/Core.py">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.64006513" vertical-offset="1919" max-vertical-offset="3621">
<state vertical-scroll-proportion="-14.035714" vertical-offset="1919" max-vertical-offset="3621">
<caret line="1472" column="26" selection-start-line="1472" selection-start-column="26" selection-end-line="1472" selection-end-column="26" />
<folding>
<element signature="e#24#781#1" expanded="false" />
@ -493,6 +589,38 @@
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/resources/searchers/ExtraTorrent.py">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0" vertical-offset="893" max-vertical-offset="1802">
<caret line="81" column="27" selection-start-line="81" selection-start-column="27" selection-end-line="81" selection-end-column="27" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/cal.py">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0" vertical-offset="0" max-vertical-offset="272">
<caret line="11" column="93" selection-start-line="11" selection-start-column="93" selection-end-line="11" selection-end-column="93" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/addon.xml">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0" vertical-offset="0" max-vertical-offset="510">
<caret line="14" column="266" selection-start-line="14" selection-start-column="31" selection-end-line="14" selection-end-column="266" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/README.txt">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.079563186" vertical-offset="0" max-vertical-offset="969">
<caret line="3" column="25" selection-start-line="3" selection-start-column="25" selection-end-line="3" selection-end-column="25" />
<folding />
</state>
</provider>
</entry>
</component>
</project>

View File

@ -1,4 +1,8 @@
Official library`s website is http://www.rasterbar.com/products/libtorrent/
Plugin helps you to watch videos from p2p torrent-networks, without full predownload (uses inner python-libtorrent) or Ace Stream. It also can add, control torrents and play downloaded files with external uTorrent, Transmisson or Vuse.
Official forum thread: http://forum.kodi.tv/showthread.php?tid=214366
[B]PYTHON-LIBTORRENT[/B]:
Official library`s website is http://www.rasterbar.com/products/libtorrent/
Plugin requires python binding
--- INSTALLATION ---
@ -12,7 +16,7 @@ No installation required, will be downloaded with plugin from repository as modu
or you could compile it:
sudo apt-get install libboost-dev libboost-python-dev libboost-system-dev g++ libssl openssl autotool automake subversion
sudo apt-get build-dep python-libtorrent
svn co https://libtorrent.svn.sourceforge.net/svnroot/libtorrent/trunk/ lt/
cd lt/
./autotool.sh
@ -37,7 +41,7 @@ ________________________________________________________________________________
или компилируем:
sudo apt-get install libboost-dev libboost-python-dev libboost-system-dev g++ libssl openssl autotool automake subversion
sudo apt-get build-dep python-libtorrent
svn co https://libtorrent.svn.sourceforge.net/svnroot/libtorrent/trunk/ lt/
cd lt/
./autotool.sh

2
cal.py
View File

@ -9,4 +9,4 @@ if ROOT + os.sep + 'resources' + os.sep + 'contenters' not in sys.path:
sys.path.insert(0, ROOT + os.sep + 'resources' + os.sep + 'contenters')
searcherObject[searcher] = getattr(__import__(searcher), searcher)()
#print str(searcherObject[searcher].get_contentList(category='search', subcategory='Hobbit'))
#print str(searcherObject[searcher].get_contentList(category='search', subcategory='Hobbit'))

View File

@ -85,10 +85,12 @@ class ExtraTorrent(SearcherABC.SearcherABC):
if None != response and 0 < len(response):
#print response
dat = re.compile(
r'''<a href="/torrent_(download/\d+).+? title="Download (.+?) torrent".+?</a>.+?</td><td>(.+?)</td><td class="sy">(\d+)</td><td class="ly">(\d+)</td>''',
r'''<a href="/torrent_(download/\d+).+? title="Download (.+?) torrent".+?</a>.+?</td><td>(.+?)</td>.+?<td class="sy">(.+?)</td>.+?<td class="ly">(.+?)</td>''',
re.DOTALL).findall(response)
for (link, title, size, seeds, leechers) in dat:
size = size.replace('&nbsp;', ' ')
seeds=seeds.replace('---', '0')
leechers=leechers.replace('---', '0')
image = sys.modules["__main__"].__root__ + self.searchIcon
link = 'http://extratorrent.cc/'+link
filesList.append((