jwodder / demagnetize Goto Github PK
View Code? Open in Web Editor NEWConvert magnet links to .torrent files
License: MIT License
Convert magnet links to .torrent files
License: MIT License
demagnetize
should be configurable via a TOML configuration file containing the following settings:
numwant
value to send to trackersThe CLI should also have a dump-config
subcommand for outputting the current configuration with explanatory comments above each field (good for creating a new config file).
Fetch data from a limited number of peers at once
asyncio.wait(..., return_when=FIRST_COMPLETED)
to run up to <limit>
peer tasks at once, adding a new peer whenever a previous one errors
acollect()
Spawn tasks for independently sending "stopped" announcements to trackers
Obviously, this will mean dropping support for trio.
See BEP 34.
Hi @jwodder. Thanks for the wonderful implementation. I had an implementation to find the torrent information from magnet. i have used your library to implement that. It's working perfectly however for my custom requirement. I just only want to get the torrent information rather than creating torrent files. So I made custom changes to be able to work.
Implementation usage: https://github.com/mhdzumair/MediaFusion/blob/develop/utils/torrent.py#L92-L150
I would like to request for creating functions to use this as library which can be used for other project rather than only focusing cli usage.
See BEP 52.
The Rust version uses a limit of 30 trackers per magnet at once.
I would like to have a function to get seeders count for the magnet to be implemented on this library. More information mhdzumair/MediaFusion#86
Thanks.
If a peer reports that the metadata info size exceeds, say, 20 MiB, abandon the connection.
How can I ensure that the event loop waits "on drop" for these to complete? Would I have to pass the tracker a task group in which to run the "stop" announcements?
See BEP 41.
ws=<URL>
parameters in magnet links should be converted into url-list
entries (BEP 19) in the resulting .torrent
file.
See https://wiki.vuze.com/w/Message_Stream_Encryption (or my write-up at https://jwodder.github.io/kbits/posts/bt-encrypt/).
The configuration file (#1) should include a setting for encryption preference: always use encryption, prefer encryption, prefer no encryption, forbid encryption(?).
See BEP 9.
See BEP 29.
See BEP 54.
See BEP 40.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.