[Errores] btlaunchmanycurses + screen + python 2.4

Hola buenos dias!

Hace un ratillo que estoy intentando usar por primera vez (en linux) un cliente para bittorrent, he bajado el codigo fuente de bittorrent experimental, con sus archivos en python y he seguido los pasos que se indican aqui
concretamente los pasos en los que se usa btlaunchmanycurses+screen (no uso linux como workstation con lo que lo administro remotamente y eso, es lo que me va mejor... o eso creo)
el caso es que lo hago todo aparentemente bien
abro un screen con: "screen -t bajando_torrents"
cambio al directorio donde tengo los archivo *.torrent
y ejecuto "btlaunchmanycurses . --max_upload_rate 10"
con eso, me sale como una barra de progreso (va creando el fichero a bajar para reservar el espacio, etc...) pero cuando llega al 100, e intenta conectar para empezar la descarga, sale esta lista de errores:

Traceback (most recent call last):

File "/usr/lib/python2.4/threading.py", line 442, in __bootstrap
self.run()
File "/usr/lib/python2.4/threading.py", line 422, in run
self.__target(*self.__args, **self.__kwargs)
File "/home/ivan/bittorrent/BitTorrent/Rerequester.py", line 76, in rerequest
File "/usr/lib/python2.4/urllib2.py", line 130, in urlopen
return _opener.open(url, data)
File "/usr/lib/python2.4/urllib2.py", line 364, in open
response = meth(req, response)
File "/usr/lib/python2.4/urllib2.py", line 468, in http_response
code, msg, hdrs = response.code, response.msg, response.info()
AttributeError: addinfourldecompress instance has no attribute 'code'
Exception in thread Thread-1:
Traceback (most recent call last):
File "/usr/lib/python2.4/threading.py", line 442, in __bootstrap
self.run()
File "/usr/lib/python2.4/threading.py", line 422, in run
self.__target(*self.__args, **self.__kwargs)
File "/home/ivan/bittorrent/BitTorrent/Rerequester.py", line 76, in rerequest
File "/usr/lib/python2.4/urllib2.py", line 130, in urlopen
return _opener.open(url, data)
File "/usr/lib/python2.4/urllib2.py", line 364, in open
response = meth(req, response)
File "/usr/lib/python2.4/urllib2.py", line 468, in http_response
code, msg, hdrs = response.code, response.msg, response.info()
AttributeError: addinfourldecompress instance has no attribute 'code'

y no baja absolutamente nada, se queda congelado y debo hacer un "kill PID"

he probado sin usar screen, pero tambien me da ese error, bueno, esos errores.

a ver si alguien puede hecharme una manilla, que no hay manera de dar con el problema, please!

PD: tengo instalado el paquete "libwxgtk2.4-python" como indica en el manual que he seguido, alguna sugerencia?


gracias!!!
Pues google dice que:

Es un bug reportado y existe al menos este parche

Aunque si no me equivoco parece ser que el parche es anterior al reporte que te he linkado :P

Pues eso, no sé si te servirá, pero por probar...

Saludos
Yo antes usaba btlaunchmany+screen+ssh. Pero ahora uso torrentflux:
http://www.torrentflux.com/

Se trata de un cliente de bittorrent controlable por web. Yo lo veo mucho más sencillo y comodo de administrar.

Saludos
Raharu, simplemente decirte, GRACIAS!
es lo que buscaba, sencillo, util y efectivo, perfecto!

gracias por la ayuda a los dos!!
Me alegro que te haya servido de ayuda. La única pega que le encuentro al torrentflux es que no se puedan bajar directamente los archivos de la interfaz. Tienes que acceder por samba, ftp o lo que sea. Si buscas por mi web encontraras un parche tonto para que al clickar sobre el archivo se baje por FTP. El único problema es que necesitas configurar el servidor FTP como dios manda y que no funciona con directorios, solo archivos.

Saludos
Raharu, he estado "investigando" un poco el tema que comentas que no se pueden descargar directamente los ficheros, y bueno, he hecho un apaño para poder conseguir ese proposito, lo comento por si alguien le interesa:

Lo primero de todo es que si al modificar el codigo de este programa, aunque sea para uso privado, debo avisar al autor, me lo comente, que no estoy seguro si debo hacerlo o no, gracias

Comento lo que he ido haciendo, despues de ir trasteando un poco con las diferentes paginas de TorrentFlux, me di cuenta que cuando detalla el listado de ficheros descargados, los *.torrents, etc...
me fije que siempre llamaba al fichero "dir.php" dependiendo del firectorio elegido, se enviaba el parametro "dir" por URL
con lo que pense, "bueno, vamos a ojear ese fichero!"
y me tope con esto (linea 176 para abajo):
[PHP]

$image = $imageOption;
}
echo "\"".$entry."\"".$entry."";
echo "".$fileSize." KB";
echo "".date("m-d-Y g:i a", $timeStamp)."";
echo "";

// The following lines of code were suggested by Jody Steele jmlsteele@stfu.ca
// this is so only the owner of the file(s) or admin can delete
// only give admins and users who "own" this directory
// the ability to delete files

if(IsAdmin($cfg["user"]) || preg_match("/^" . $cfg["user"] . "/",$dir))

[/PHP]


con lo que fijandonos un poco, vemos que la linea que nos interesa es solamente esta:
[PHP]
echo "\"".$entry."\"".$entry."";
[/PHP]

mas concretamente esto:
[PHP]
border=\"0\">".$entry."";
[/PHP]

Si modificamos esa variable $entry para que se añada un enlace al fichero que se esta listando, conseguiremos que podamos bajar el ficherito en cuestion directamente desde TorrentFlux

Yo he hecho esto:
1.- He añadido un Alias en la configuracion del Apache (la particion que tengo para Apache no es muy grande, y los torrents no caben) que apunta al directorio donde guardo los *.torrents y los ficheros descargados.
Alias /torrents "/direcotirio/donde/tengamos/los/torrents/"

Options None
AllowOverride None
Order allow,deny
Allow from all # Esto se puede modificar y poner en lugar de from all, from 192.168.0.? o similar para permitir solo acceso desde esa ip



una vez hecho esto (el directorio en cuestion debe tener permisos para que el propietario de Apache pueda acceder al mismo)

2.- He modificado el fichero "dir.php" de esta forma:
[PHP]
$image = $imageOption;
}
$bajar_de = "../torrents/".$dir.$entry;
echo "\"".$entry."\"".$entry."";
echo "".$fileSize." KB";
[/PHP]


aqui "$bajar_de = "../torrents/".$dir.$entry;" añado ../ porque tengo el torrentflux en un subdirectorio dentro del htdocs del Apache, si se tiene en el raiz, no seria necesario ponerlo o si se tiene en un sub-sub-directorio se deberia poner "../../torrents/".$di...

3.- Reiniciamos Apache
4.- Entramos en TorrentFlux, nos vamos a "Listado de directorios" y... voila! a bajar desde la web directamente!

Espero que esto sea de ayuda a alguien, y si alguien lo hace mas sencillo, que lo diga por favor, que esto es mas bien una chapucilla que se le podria haber ocurrido a cualquiera!!!!


Saludos, y sorry por el palizon! :)
Bueno, yo lo tenia hecho por ftp para que apache no pueda acceder a esos ficheros. Pero es igual de valido.
Por cierto, el código es GPL, así que tengo el derecho a modificarlo sin avisar al autor. De todas formas, si se tratara de algo realmente util lo habria enviado (por lo que sé, esa feature vendra con la release 2.0)

Saludos
hola de nuevo!

como no tenia otra cosa mejor que hacer, pues, me he puesto a traducir el TorrentFlux a Catalan, ya esta traducido y enviado al autor del programa (me ha contestado rapidisimo dandome las gracias! un 10 por él!) lo incluira dentro de poco, pero por si alguien lo quiere, lo adjunto aqui, lo renombrais, y listo.

PD: es posible que alguna traduccion no este del todo bien, por lo que acepto correcciones! :)

Adjuntos

En la beta 2.0 ya está incluido lo de las descargas por web. Animaos a usarla aunque sea beta, yo llevo con ella unos 6 meses y ningun problema. Tambien echadle un vistazo al foro de 'Hacks', ya que hay alguno que otro interesante.


Agur
Te adjunto un parche a tu traducción, creo que no me he equivocado en ninguna corrección. Si lo he hecho, avisa y aprenderé alguna cosa nueva ;)

Además, en la línea 52 tienes puesto un acento y en los demás lugares donde debería haberlos no, échale un ojo, más que nada para normalizarlo (yo no te he modificado nada de acentos ni mayúsculas/minúsculas).

Saludos

Adjuntos

bueeeeno, creo que ya esta un poco mejor, gracias por el parche, siempre hay cosas que se escapan, creo que ahora no queda nada mas que corregir, de todas formas, para corregir, siempre estamos a tiempo! :)

Zamorate, donde puedo bajar la beta 2.0 por que en la web oficial no sale, no? yo no lo he visto, voy a mirar de nuevo, a ver si lo encuentro

saludos!
http://prdownloads.sourceforge.net/torrentflux/torrentflux-2.0beta1.tar.gz?download

Ahí tienes los mirrors, lo he sacado de SourceForge

Yo ahora he estado probando un fork de la 2.0 que viene con muchos hacks interesantes incorporados. Se llama TorrentFlux Xtreme 2.0, pero creo que todavia no está para bajarla al público.

Agur
a investigar se ha dicho!

zenkiu!
12 respuestas