tiagopassos Postado Julho 30, 2006 Denunciar Share Postado Julho 30, 2006 Depois de muita luta :P consegui o script abaixo,que serve para requisitar informações de um determinadotorrent ao seu tracker. Considerando que o nome doarquivo é TorrentFile.php, alguém poderia me ajudara descobrir como usá-lo? seria através do linkTorrentFile.php?filename=nome_do_torrent.torrent ? <?php class TorrentFile { var $index; var $source; var $final_array; function handler() { $char = $this->source[$this->index]; if (is_numeric($char)) return $this->handler_string(); if ($char == 'i') { ++$this->index; return $this->handler_int(); } if ($char=='l') { ++$this->index; return $this->handler_list(); } if ($char=='d') { ++$this->index; return $this->handler_dictonary(); } die("MAIN HANDLER: UNEXPECTED CHAR (position: $this->index): ".$char); } function handler_int() { $current_char=''; $number = ""; while (($current_char = $this->source[$this->index]) != 'e') { ++$this->index; $number .= $current_char; } ++$this->index; return (int) $number; } function handler_string(){ $size =""; while($this->source[$this->index] != ':') { $size .= $this->source[$this->index]; ++$this->index; } $i = ++$this->index; $this->index += $size; $x= substr($this->source, $i, $size); return $x; } function handler_list() { $return_list = array(); while ($this->source[$this->index] != 'e') { $this->index1 = $this->index; $return_list[] = $this->handler(); if ($this->index1 == $this->index) die("INFINITE LOOP IN THE LIST"); } ++$this->index; return $return_list; } function handler_dictonary() { $return_dict = array(); while ($this->source[$this->index] != 'e') { $this->index1 = $this->index; $return_dict[$this->handler_string()] = $this->handler(); if ($this->index1 == $this->index) die("INFINITE LOOP IN THE DICTONARY"); } ++$this->index; return $return_dict; } function parse_file($filename) { $this->source = file_get_contents($filename); $this->index = 0; $filesize = strlen($this->source); $this->final_array=array(); while($this->index<$filesize) { $this->index1 = $this->index; $this->final_array[] =$this->handler(); if ($this->index1 == $this->index) die("INFINITE LOOP IN THE ROOT LIST"); } $this->source = ''; return $this->final_array; } } $x = new TorrentFile(); var_dump($x->parse_file("vertigo2.torrent")); ?> Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 ( David . RJ . 2K ) Postado Julho 31, 2006 Denunciar Share Postado Julho 31, 2006 uhn... bem estranho...Xo v...Tente assim, mas duvido muito que funciona, mas...include "./TorrentFile.php"; $hnd = new TorrentFile; echo $hnd->parser_file("localização_do_torrent_aki"); FLWS espero ter ajudado! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 tiagopassos Postado Agosto 1, 2006 Autor Denunciar Share Postado Agosto 1, 2006 É...não funcionou mesmo.alguém tem outra sugestão?tentei apontar o arquivo .torrentassim: /public_html/cinetorrent/torrents/$id.torrente assim: torrents/$id.torrent Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 ( David . RJ . 2K ) Postado Agosto 2, 2006 Denunciar Share Postado Agosto 2, 2006 tenta./torrents/{$id}.torrentTpo, o Echo retorna o que?"Array"? Ou ""?FLWS! Espero ajudar Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Guest Visitante Postado Agosto 4, 2006 Denunciar Share Postado Agosto 4, 2006 tentei também...n funcionouretorna isso: array(0) { }alguém tem mais alguma sugestao? :) Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 jissa Postado Agosto 4, 2006 Denunciar Share Postado Agosto 4, 2006 como usar já esta no arquivo$x = new TorrentFile();var_dump($x->parse_file("vertigo2.torrent"));no lugar de vertigo.torrent coloque o caminho real do arquivo que quer.. tipo '/home/usuario/public_html/dir1/nome.xxx' Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 tiagopassos Postado Setembro 26, 2006 Autor Denunciar Share Postado Setembro 26, 2006 opa jissa,funcionou! :)vocês podem ver o resultado aqui:http://baboonget.net/TorrentFile2.php?id=112http://baboonget.net/TorrentFile2.php?id=115http://baboonget.net/TorrentFile2.php?id=116Mas...como retirar as informações desse intrincado de dados?como pegar só o título do torrent por exemplo?e o status (seeders/leechers), alguém sabe como? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 jissa Postado Setembro 26, 2006 Denunciar Share Postado Setembro 26, 2006 Olá..da uma olhada na função strip_tags pode ajudar.. outra coisa seria a srtreplace... mas que da da.. :) Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 tiagopassos Postado Outubro 21, 2006 Autor Denunciar Share Postado Outubro 21, 2006 certo,mas e quanto aos peers do torrent (seeders + leechers)?Como faço pra requisitar essas informações? :) Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 tiagopassos Postado Dezembro 22, 2006 Autor Denunciar Share Postado Dezembro 22, 2006 Consegui botar pra funcionar - com a ajuda de outros usuários - o script que pega as informações de um arquivo .torrent (arquivos, tracker etc.). Mas não consegui fazer com que esse script requisite no tracker as informações de seeders e leechers. alguém tem alguma idéia? Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
tiagopassos
Depois de muita luta :P consegui o script abaixo,
que serve para requisitar informações de um determinado
torrent ao seu tracker. Considerando que o nome do
arquivo é TorrentFile.php, alguém poderia me ajudar
a descobrir como usá-lo? seria através do link
TorrentFile.php?filename=nome_do_torrent.torrent ?
Link para o comentário
Compartilhar em outros sites
9 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.