61 lines
1.8 KiB
Python
Executable File
61 lines
1.8 KiB
Python
Executable File
################################################################################
|
|
# Author: Poka (poka@p2p.legal)
|
|
# Version: 0.0.1
|
|
# License: AGPL-3.0 (https://choosealicense.com/licenses/agpl-3.0/)
|
|
# Git: https://git.p2p.legal/axiom-team/astroport
|
|
################################################################################
|
|
|
|
import requests
|
|
import json
|
|
import sys
|
|
import subprocess
|
|
import login
|
|
import time
|
|
|
|
# Load scraper
|
|
from yggcrawl import YggTorrentScraper
|
|
scraper = YggTorrentScraper(requests.session())
|
|
from yggtorrentscraper import set_yggtorrent_tld
|
|
set_yggtorrent_tld("se")
|
|
name = ' '.join(sys.argv[1:])
|
|
|
|
# Give paramaters to scraper
|
|
parameters = {
|
|
"name": name,
|
|
"category": "films_&_videos",
|
|
"subcategory": "film",
|
|
"sort": "seed",
|
|
"order": "desc"
|
|
}
|
|
|
|
# Execute scrapping
|
|
research = scraper.search(parameters)
|
|
|
|
# Check if not found
|
|
if research == []:
|
|
print("Aucun torrent trouvé ayant pour nom \"" + name + "\"")
|
|
sys.exit()
|
|
|
|
# Options
|
|
#most_completed = scraper.most_completed()
|
|
#print(json.dumps(research, sort_keys=True, indent=4))
|
|
#print(json.dumps(most_completed, sort_keys=True, indent=4))
|
|
|
|
# Download torrent file
|
|
if(scraper.login(login.user, login.passwd)):
|
|
print("Login success")
|
|
first_torrent = research[0]
|
|
scraper.download_from_torrent_url(first_torrent)
|
|
else:
|
|
print("Login failed")
|
|
|
|
# Remove tracker
|
|
|
|
print("Start to remove tracker ...")
|
|
time.sleep(1)
|
|
ID = subprocess.Popen(["./trans-ctl.sh -l | grep -vE 'Sum:|ID Done' | tail -n1 | awk '{ print $1 }'"], shell=True, executable="/bin/bash", stdout=subprocess.PIPE).communicate()[0].strip().decode('ascii')
|
|
print("Wait 10 seconds to get peers before remove tracker...")
|
|
time.sleep(10)
|
|
subprocess.call(["./trans-ctl.sh", "-t", ID, "--tracker-remove", "http://ygg.peer2peer.cc:8080"])
|
|
print("Done")
|