![]() |
Converter link magnet em arquivo torrent com Python e libtorrent |
|
Canal @CanalQb |
Converter um link magnet em um arquivo torrent pode ser uma necessidade para usuários que desejam armazenar o arquivo .torrent para uso posterior, distribuição ou análise. Usando Python e a biblioteca libtorrent, isso é possível de forma prática e eficiente.
Como funciona o processo
O link magnet contém metadados que identificam o conteúdo do torrent, mas não o arquivo torrent propriamente dito. Para converter esse link em um arquivo .torrent, a libtorrent inicia o download da metadata do torrent (sem baixar os dados completos do arquivo) e permite que o arquivo torrent seja gerado a partir dessas informações.
Exemplo de código em Python
import libtorrent as lt
# Link magnet de exemplo
magnet_link = "magnet:?xt=urn:btih:9B28B6B4D47CF1521781D5DDC09B95B0328FBE0B&dn=ubuntu-20.04.3-desktop-amd64.iso&tr=https%3A%2F%2Ftorrent.ubuntu.com%2Fannounce&tr=https%3A%2F%2Fipv6.torrent.ubuntu.com%2Fannounce"
# Criar uma sessão do libtorrent
ses = lt.session()
# Parâmetros para adicionar o torrent
params = {
'save_path': '.', # Diretório para salvar o arquivo torrent
'storage_mode': lt.storage_mode_t.storage_mode_allocate,
'paused': False,
'auto_managed': True,
'duplicate_is_error': True
}
# Adicionar o link magnet à sessão
handle = lt.add_magnet_uri(ses, magnet_link, params)
print('Baixando metadata...')
# Esperar até que a metadata seja baixada
while not handle.has_metadata():
pass
# Obter as informações do torrent
info = handle.get_torrent_info()
# Gerar e salvar o arquivo torrent
torrent = lt.create_torrent(info)
torrent_content = lt.bencode(torrent.generate())
file_path = './' + info.name() + '.torrent'
with open(file_path, 'wb') as f:
f.write(torrent_content)
print(f"Arquivo torrent salvo em {file_path}")
# Pausar a sessão ao final
ses.pause()
Recomendações e avisos importantes
- Para executar esse código, é necessário instalar a biblioteca
libtorrent
, que pode ser instalada viapip install python-libtorrent
(verifique compatibilidade com seu sistema). - O processo baixa apenas a metadata do torrent, garantindo rapidez e economia de banda.
- Salve o arquivo torrent em diretórios seguros para evitar perda ou uso indevido.
- Verifique sempre a legalidade dos arquivos que você está acessando, respeitando direitos autorais e legislação local.
Considerações finais
Este método é amplamente utilizado por desenvolvedores, entusiastas de torrents e para fins educacionais, auxiliando no gerenciamento e distribuição de arquivos P2P. A libtorrent é um projeto consolidado, disponível em seu site oficial https://libtorrent.org/, onde você pode encontrar documentação detalhada e recursos adicionais.
Ao trabalhar com torrents, lembre-se sempre da responsabilidade individual de analisar cuidadosamente os conteúdos que você compartilha ou baixa. O uso indevido pode levar a implicações legais.