All Projects → WinPooh32 → peerstohttp

WinPooh32 / peerstohttp

Licence: GPL-3.0 license
Simple torrent proxy to http stream controlled over REST-like api

Programming Languages

go
31211 projects - #10 most used programming language
Dockerfile
14818 projects

Projects that are alternatives of or similar to peerstohttp

Ssbc
手撕包菜网站
Stars: ✭ 1,382 (+4506.67%)
Mutual labels:  torrent, dht, magnet
torrent-spider
基于DHT的p2p网络资源爬虫
Stars: ✭ 65 (+116.67%)
Mutual labels:  torrent, dht, magnet
Aria2.sh
Aria2 一键安装管理脚本 增强版
Stars: ✭ 1,276 (+4153.33%)
Mutual labels:  torrent, downloader, magnet
bthello
Python3 DHT 磁力种子爬虫 种子解析 种子搜索 演示地址
Stars: ✭ 43 (+43.33%)
Mutual labels:  torrent, dht, magnet
Snail
基于Java、JavaFX开发的下载工具,支持下载协议:BT(BitTorrent、磁力链接、种子文件)、HLS(M3U8)、FTP、HTTP。人家才不要你的⭐⭐呢,哼
Stars: ✭ 102 (+240%)
Mutual labels:  torrent, dht, magnet
Bt
BitTorrent library and client with DHT, magnet links, encryption and more
Stars: ✭ 2,011 (+6603.33%)
Mutual labels:  torrent, dht, magnet
Magnet And Torrent Search Engine
磁力链接和 BT 种子的搜索引擎
Stars: ✭ 154 (+413.33%)
Mutual labels:  torrent, dht, magnet
Torrent-To-Google-Drive-Downloader
Simple notebook to stream torrent files to Google Drive using Google Colab and python3.
Stars: ✭ 256 (+753.33%)
Mutual labels:  torrent, downloader, torrent-stream
Minithunder
android迷你版迅雷,支持thunder:// ftp:// http:// ed2k:// 磁力链 种子文件的下载,音视频文件支持边下边播.
Stars: ✭ 254 (+746.67%)
Mutual labels:  torrent, magnet
IPtv
A collection of private IPtv list as well as Third-party IPtv list. (not updated anymore)
Stars: ✭ 16 (-46.67%)
Mutual labels:  playlist, m3u
ustvgo to m3u
Grabs m3u links from ustvgo.tv
Stars: ✭ 35 (+16.67%)
Mutual labels:  playlist, m3u
Gmdb
GMDB is the ultra-simple, cross-platform Movie Library with Features (Search, Take Note, Watch Later, Like, Import, Learn, Instantly Torrent Magnet Watch)
Stars: ✭ 189 (+530%)
Mutual labels:  torrent, magnet
Dht
dht is used by anacrolix/torrent, and is intended for use as a library in other projects both torrent related and otherwise
Stars: ✭ 184 (+513.33%)
Mutual labels:  torrent, dht
aws-clustered-video-streams
A clustered video stream is an AWS architecture that increases the quality and reliability of live events by providing seamless regional failover capabilities for live video steams. Operators can monitor the status of the clustered stream from a single pane of glass and dynamically control from which region the stream consumed by a player origin…
Stars: ✭ 35 (+16.67%)
Mutual labels:  playlist, streaming-video
Torrent Paradise
Decentralized DHT search site for IPFS
Stars: ✭ 181 (+503.33%)
Mutual labels:  torrent, dht
dhtrobot
A kademila DHT implement in go
Stars: ✭ 40 (+33.33%)
Mutual labels:  dht, kademlia
movie-app
🌈 TMDB + Laravel + LiveWire + AlpineJS + ViewModels + Components = ❤️ Movies App 🔥
Stars: ✭ 43 (+43.33%)
Mutual labels:  torrent, torrent-stream
Torrent Discovery
Discover BitTorrent and WebTorrent peers
Stars: ✭ 177 (+490%)
Mutual labels:  torrent, dht
Iptv
Collection of publicly available IPTV channels from all over the world
Stars: ✭ 45,053 (+150076.67%)
Mutual labels:  playlist, m3u
MiXLab
MiXLab is a mix of multiple amazing Colab Notebooks found on the internet such as rcloneLab, RLabClone, Torrent to Google Drive Downloader and some more.
Stars: ✭ 143 (+376.67%)
Mutual labels:  torrent, downloader

peerstohttp

FOSSA Status Go Report Card

Simple torrent proxy to http stream controlled over REST-like api

Built top on anacrolix/torrent lib.

HTTP API

URL Parameters
  • playlist - output file format, one of these values: m3u,html,json
  • hash - torrent info hash. Example: 08ada5a7a6183aae1e09d831df6748d566095a10
  • extsWhitelist - list of whitelisted file extensions. Possible values: "-" (any) or list extension names divided by comma. Examples: "-", "mp3,mp4a"
  • tagsBlacklist - list of blacklisted tags, extracted from file names. Possible values: "-" (no filter) or list tags divided by comma. See /playlist/tags.go for full list of possible tags. Examples: "-", "remix,interview"

Get list of files by magnet uri:

GET http://localhost/list/{playlist}/{extsWhitelist}/{tagsBlacklist}/magnet/{magnetURI}

Get list of files by info hash:

GET http://localhost/list/{playlist}/{extsWhitelist}/{tagsBlacklist}/hash/{hash}

Download file:

GET http://localhost/content/{hash}/{filePath}

Examples

Get HTML links list for Sintel by torrent hash:

http://localhost/list/html/mp4/-/hash/08ada5a7a6183aae1e09d831df6748d566095a10

or by magnet URI:

http://localhost/list/html/mp4/-/magnet/magnet:?xt=urn:btih:08ada5a7a6183aae1e09d831df6748d566095a10&dn=Sintel&tr=udp%3A%2F%2Fexplodie.org%3A6969&tr=udp%3A%2F%2Ftracker.coppersurfer.tk%3A6969&tr=udp%3A%2F%2Ftracker.empire-js.us%3A1337&tr=udp%3A%2F%2Ftracker.leechers-paradise.org%3A6969&tr=udp%3A%2F%2Ftracker.opentrackr.org%3A1337&tr=wss%3A%2F%2Ftracker.btorrent.xyz&tr=wss%3A%2F%2Ftracker.fastcast.nz&tr=wss%3A%2F%2Ftracker.openwebtorrent.com&ws=https%3A%2F%2Fwebtorrent.io%2Ftorrents%2F&xs=https%3A%2F%2Fwebtorrent.io%2Ftorrents%2Fsintel.torrent

Then watch Sintel.mp4 using VLC video player:

vlc http://localhost/content/08ada5a7a6183aae1e09d831df6748d566095a10/Sintel/Sintel.mp4

Or open m3u playlist in VLC video player:

vlc http://localhost/list/m3u/mp4/-/hash/08ada5a7a6183aae1e09d831df6748d566095a10

Generate m3u files from list of magnets using wget and bash script:

makelist.sh
#!/bin/bash

magnets="magnets.txt"
playlist_dir="playlists" 

host="localhost"
port="8484"

exts="mp3,mp4,m4a,m4,flac"
exclude_tags="live,interlude,demo,orchestral,orch,remix,mix,acoustic,instr,instrumental,synthesis,bonus,heavy"

rm -f $playlist_dir/*m3u*

while read line; do
     wget --content-disposition --directory-prefix=$playlist_dir --tries=3 "http://$host:$port/list/m3u/$exts/$exclude_tags/magnet/$line"
done < $magnets

Docker

Run container with exposed 8484 http port:

docker run --volume downloads:/downloads -it -p 8484:80 winpooh32/peerstohttp:latest -dir=/downloads

Build steps

utp dependency requires C compiler, then install it:

Download:

go get -v -u github.com/WinPooh32/peerstohttp

Build in vendor mode:

go build -mod=vendor -o peerstohttp

Install:

go install -i github.com/WinPooh32/peerstohttp/cmd

Run:

go run github.com/WinPooh32/peerstohttp/cmd -port=8484 -dir="/path/to/download"
  • Usually, $GOPATH is "~/go";
  • Default dir value is system tmp folder, for listing all possible options run $ ./peerstohttp -help.

License

FOSSA Status

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].