Página 3 de 19
Re: usar binarios script.module.libtorrent by DiMartino
Publicado: 12 Jul 2016, 06:42
por robalo
Se me olvidaba otra vez. La forma de usarlo ha cambiado de
Código: Seleccionar todo
from python_libtorrent import get_libtorrent
lt = get_libtorrent()
a
Código: Seleccionar todo
from lib.python_libtorrent import *
lt = get_libtorrent()
Re: usar binarios script.module.libtorrent by DiMartino
Publicado: 12 Jul 2016, 11:59
por neno1978
robalo escribió:
Queda por saber que nos entrega "sys.platform" en darwin e ios
Como dijo aquel
¡Por el aire quisiera mi impaciencia que lo trajeras!...
En mac da "darwin" y en iOS , sorprendentemente da tambien "darwin"
Habría que diferenciarlos , porque más veces que he probado yo el libtorrent del Osx en iOS ...
Que tal algo como :
Código: Seleccionar todo
import platform
pepe = sys.platform
if pepe == 'darwin':
try:
check_platform=platform.machine()
print "Mac OSX!!"
except:
print "IOS"
Uso "pepe" porque me da conflicto platform con platform.machine , lo que se solucionaría cambiando a platform.system() , pero eso ya com veas( la única diferencia a nivel de iOS o mac , es que darwin pasaría a Darwin"
Y tampoco sé si esto seria operativo para todos , en el mío que es el que he probado hasta que el iphone peto la batería, funciono.
Uso el try except porque en iOS "platform.machine()" por lo menos a mi me peta.
No obstante, esto es solo el concept, es decir , una manera, segura que hay muchas mas, rapidita que he visto para diferenciar OSX de iOS

Ea... a seguir bien

Re: usar binarios script.module.libtorrent by DiMartino
Publicado: 12 Jul 2016, 21:28
por robalo
te/os paso un nuevo __init__ personalizado que debería funcionar mejor. Le he cambiado el método para importar y añadido el path de búsqueda de las librerias también reutilizando código de los script de DiMartino
Código: Seleccionar todo
#-*- coding: utf-8 -*-
'''
Torrenter v2 plugin
Copyright (C) 2015 srg70, RussakHH, DiMartino
'''
import sys
import os
def get_platform():
ret = {
"arch": sys.maxsize > 2 ** 32 and "x64" or "x86",
}
_platform = sys.platform
if _platform == "linux3":
ret["os"] = "android"
if "arm" in os.uname()[4] or "aarch64" in os.uname()[4]:
ret["arch"] = "arm"
elif _platform == "linux2":
ret["os"] = "linux"
uname=os.uname()[4]
if "arm" in uname:
if "armv7" in uname:
ret["arch"] = "armv7"
elif "armv6" in uname:
ret["arch"] = "armv6"
else:
ret["arch"] = "arm"
elif "win" in _platform:
ret["os"] = "windows"
elif _platform == "darwin":
ret["os"] = "darwin"
elif _platform == "ios":
ret["os"] = "ios"
ret["arch"] = "arm"
ret=get_system(ret)
return ret
def get_system(ret):
ret["system"] = ''
if ret["os"] == 'windows':
ret["system"] = 'windows'
elif ret["os"] == "linux" and ret["arch"] == "x64":
ret["system"] = 'linux_x86_64'
elif ret["os"] == "linux" and ret["arch"] == "x86":
ret["system"] = 'linux_x86'
elif ret["os"] == "linux" and "arm" in ret["arch"]:
ret["system"] = 'linux_'+ret["arch"]
elif ret["os"] == "android":
if ret["arch"]=='arm':
ret["system"] = 'android_armv7'
else:
ret["system"] = 'android_x86'
elif ret["os"] == "darwin":
ret["system"] = 'darwin'
elif ret["os"] == "ios" and ret["arch"] == "arm":
ret["system"] = 'ios_arm'
return ret
_platform = get_platform()['system']
THIS_PATH = os.path.abspath(os.path.join(os.path.dirname(__file__),"."))
dest_path = os.path.join(THIS_PATH, _platform)
sys.path.insert(0, dest_path)
if _platform in ['linux_x86', 'windows', 'linux_armv6', 'linux_armv7', 'linux_x86_64']:
import libtorrent
elif _platform in ['darwin', 'ios_arm']:
import imp
path_list = [dest_path]
fp, pathname, description = imp.find_module('libtorrent', path_list)
try:
libtorrent = imp.load_module('libtorrent', fp, pathname, description)
finally:
if fp: fp.close()
elif _platform in ['android_armv7', 'android_x86']:
import imp
from ctypes import CDLL
dll_path=os.path.join(dest_path, 'liblibtorrent.so')
liblibtorrent=CDLL(dll_path)
path_list = [dest_path]
fp, pathname, description = imp.find_module('libtorrent', path_list)
try:
libtorrent = imp.load_module('libtorrent', fp, pathname, description)
finally:
if fp: fp.close()
def get_libtorrent():
return libtorrent
Neno trabaja con este nuevo archivo, tengo el iphone sin jailbreak y creo me moriré de asco esperando
El motivo de la modificación es que lo probé esta mañana sin reiniciar el kodi de la tablet y seguía conservando los archivos y la ruta de los .os en el path de búsqueda de la última prueba con la primera forma de este hilo
Editaré el post anterior para que apunte a este post para conservar el historial
EDITO: He corregido el script. Para variar, había pegado el que no era
RE-EDITO: La línea "
liblibtorrent=CDLL(dll_path)" estaba duplicada, puto copy/paste voy a tener que recurrir al adjunto
NUEVO SCRIPT RE-EDITADO POR NENO en
viewtopic.php?f=14&t=7708&start=40#p32961 (
Nuevo __init__.py personalizado con otra nueva corrección)
Re: usar binarios script.module.libtorrent by DiMartino
Publicado: 12 Jul 2016, 23:43
por neno1978

tranki robalo, el 9.3.2 está apunto de caramelo y el iOS 10 ya está hecho, en agosto seguramente tendremos jailbreak , a no ser q no te apetezca , claro está
Mañana a primera hora con el cafelito negro le damos vueltas q ya estoy pa tintito reponedor , comidita y a quedarme sobao viendo acuarios XXL

Re: usar binarios script.module.libtorrent by DiMartino
Publicado: 13 Jul 2016, 07:02
por neno1978
Buenos dias desde donde el sol no te calienta, intenta matarte lenta y sádicamente...
Robalo, he estado probando con Mac OSX first, y lo primero es que el
da conflico, poooruqeee "dar-WIN" ze cuelaaaaarrrrrrrr , jandemorrr. Ya que if "win" esta antes ==darwin, cambiandolo de posición creo que valdría, yo, como buen puto vago, lo he elimina o del tirón.
Y ahora estoy reliao con el siguiente error que me da : uzeaze...
Código: Seleccionar todo
from lib.python_libtorrent import *
File "/Users/ignaciobernal/Library/Application Support/Kodi/addons/plugin.video.pelisalacarta/lib/python_libtorrent/__init__.py", line 82, in <module>
fp, pathname, description = imp.find_module('libtorrent', path_list)
ImportError: No module named lib torrent
Vamos a darle un ratito

Re: usar binarios script.module.libtorrent by DiMartino
Publicado: 13 Jul 2016, 07:59
por neno1978
Espera espera, el init el path indica hacia python_libtorrent/darwin , es ahí donde hay que copiar las diferentes plataformas? , porque creo haberte leído lib/darwin? ... si las copio dentro de python_libtorrent rula de lujo
Bueno, ya me diras... voy hacer un poco de deporte, que hay que estirar las piernas, y después pruebo con iphone,

Re: usar binarios script.module.libtorrent by DiMartino
Publicado: 13 Jul 2016, 10:38
por neno1978
Bueno pues una vez "culturizado" primera prueba fallida en iOS, "arquitectura errónea", evidentemente identifica darwin con mac y no tira de iOS ...
Segunda prueba con mi "peazo de parche" , sustituyendo después de 'elif _platform == "darwin":' ;
Código: Seleccionar todo
elif _platform == "darwin":
import platform
try:
check_platform=platform.machine()
print "Mac"
ret["os"] = "darwin"
except:
ret["os"] = "ios"
ret["arch"] = "arm"
print "IOS"
ret=get_system(ret)
return ret
Rula perfect

Si no te mola el Peajo parchepodemos buscar otra manera de diferenciarlo , pues tampoco estoy muy convencido de que la excepción sea en todo iOS , o solo en el mío, vete tu a saber.
Esta hehco en iphone 5s , en mi iphone 6s no puedo pobrarlo pues me vino con iOS 9.2.3 ... también dispongo de vetusto iphone 4 que podría probarlo ... aunque no sé si responderá muy bien pues este lo trastea mi bicho mediano(6añitos) , pero podemos ver

Re: usar binarios script.module.libtorrent by DiMartino
Publicado: 13 Jul 2016, 13:00
por Cmos
Qué buena pinta está cogiendo el tema, es lo único que le faltaba a MCT, ser multiplataforma, seguro que quien lo pruebe ya no vuelve a los quasar y derivados

No sé si habéis testeado algo en android, si no es así hago la prueba, en el resto de plataformas no os puedo echar una mano

Neno, menos mal que te pones a la fresquita, estos días ponerse delante del pc en según qué horas es deporte extremo

Re: usar binarios script.module.libtorrent by DiMartino
Publicado: 13 Jul 2016, 14:50
por neno1978
Re: usar binarios script.module.libtorrent by DiMartino
Publicado: 13 Jul 2016, 18:01
por neno1978
Master , Cmos, si tenéis un espacio intentad reproducir el torrent los 100 temp 1 capítulo 3 en bityouth por MCT , me ha dado un error raro en play de MCT que no he podido ojear xq me han echao los niños a patas del ordenador

pero me ha pasado varias veces

Edito: lo he probado en el iPhone y no da problema, algo he debido tocar trasteando. De todas formas probadlo porfa y me decís
