torrents.csv/README.md

105 lines
3.4 KiB
Markdown
Raw Normal View History

2018-10-04 23:33:33 +00:00
# Torrents.csv
2018-10-03 17:12:12 +00:00
<!-- Torrents.csv - An open source, collaborative repository of torrents, with a self-hostable web server. -->
2018-11-27 23:36:18 +00:00
[Demo Server](https://torrents-csv.ml)
2018-10-09 22:44:49 +00:00
2018-11-27 23:36:18 +00:00
`Torrents.csv` is a *collaborative* repository of torrents, consisting of a single, searchable `torrents.csv` file. Its initially populated with a January 2017 backup of the pirate bay, and new torrents are periodically added from various torrents sites. It comes with a self-hostable [Torrents.csv webserver](https://torrents-csv.ml), a command line search, and a folder scanner to add torrents.
2018-10-03 17:12:12 +00:00
2018-11-27 23:36:18 +00:00
`Torrents.csv` will only store torrents with at least one seeder to keep the file small, will be periodically purged of non-seeded torrents, and sorted by seeders descending.
2018-10-11 21:59:30 +00:00
2018-11-27 23:36:18 +00:00
![img](https://i.imgur.com/GJQE3Xi.png)
2018-10-11 22:11:26 +00:00
2018-11-27 23:36:18 +00:00
To request more torrents, or add your own, go [here](https://gitlab.com/dessalines/torrents.csv/issues).
2018-10-11 21:59:30 +00:00
Made with [Rust](https://www.rust-lang.org), [ripgrep](https://github.com/BurntSushi/ripgrep), [Actix](https://actix.rs/), [Inferno](https://www.infernojs.org), [Typescript](https://www.typescriptlang.org/).
2018-11-27 23:36:18 +00:00
## Webserver
`Torrents.csv` comes with a simple webserver. [Demo Server](https://torrents-csv.ml)
2018-10-11 21:59:30 +00:00
### Requirements
2018-11-27 23:36:18 +00:00
- Rust
- Yarn
### Running
```
2018-10-24 22:33:14 +00:00
git clone https://gitlab.com/dessalines/torrents.csv
2018-11-27 23:36:18 +00:00
cd torrents.csv/scripts
./webserver.sh
2018-10-24 22:33:14 +00:00
```
2018-11-27 23:36:18 +00:00
and goto http://localhost:8080
2018-10-24 22:33:14 +00:00
2018-11-27 23:36:18 +00:00
If running on a different host, open up `server/ui/src/env.ts` and change your hostname.
2018-10-04 20:23:57 +00:00
2018-11-27 23:36:18 +00:00
## Command Line Searching
2018-10-11 21:59:30 +00:00
### Requirements
2018-11-27 23:36:18 +00:00
- [ripgrep](https://github.com/BurntSushi/ripgrep)
### Running
2018-11-27 23:36:18 +00:00
```
git clone https://gitlab.com/dessalines/torrents.csv
cd torrents.csv
./search.sh "bleh season 1"
bleh season 1 (1993-)
seeders: 33
size: 13GiB
link: magnet:?xt=urn:btih:INFO_HASH_HERE
```
2018-11-27 23:36:18 +00:00
## Uploading / Adding Torrents from a Directory
An *upload*, consists of making a pull request after running the `scan_torrents.sh` script, which adds torrents from a directory you choose to the `.csv` file, after checking that they aren't already there, and that they have seeders.
2018-10-05 06:48:51 +00:00
### Requirements
- [Torrent-Tracker-Health Dessalines branch](https://github.com/dessalines/torrent-tracker-health)
- `npm i -g dessalines/torrent-tracker-health`
- [jq command line JSON parser](https://stedolan.github.io/jq/)
### Running
2018-10-05 06:48:51 +00:00
[Click here](https://gitlab.com/dessalines/torrents.csv/forks/new) to fork this repo.
```sh
2018-10-04 23:33:33 +00:00
git clone https://gitlab.com/[MY_USER]/torrents.csv
cd torrents.csv/scripts
./scan_torrents.sh MY_TORRENTS_DIR # `MY_TORRENTS_DIR` is `~/.local/share/data/qBittorrent/BT_backup/` for qBittorrent on linux, but you can search for where your torrents are stored for your client.
2018-11-27 23:36:18 +00:00
git commit -am "Adding [MY_USER] torrents"
git push
```
2018-10-04 20:23:57 +00:00
2018-10-04 23:33:33 +00:00
Then [click here](https://gitlab.com/dessalines/torrents.csv/merge_requests/new) to do a pull/merge request to my branch.
2018-10-04 20:23:57 +00:00
2018-11-27 23:36:18 +00:00
## Web scraping torrents
`Torrents.csv` has a `Rust` repository for scraping new and top torrents from some torrent sites in the `new_torrents_fetcher` folder. It currently only has skytorrents, but more will be added later.
### Requirements
- Rust
### Running
```
git clone https://gitlab.com/dessalines/torrents.csv
cd torrents.csv/scripts
./update.sh
```
## How the .csv file looks
2018-10-11 21:59:30 +00:00
```sh
infohash;name;size_bytes;created_unix;seeders;leechers;completed;scraped_date
# torrents here...
```
2018-10-03 17:12:12 +00:00
2018-11-27 23:36:18 +00:00
## Sources for new torrents
- https://www.skytorrents.lol/top100
- https://1337x.to/top-100
- https://1337x.to/trending