Merge branch 'master' of sebastian404/PDMameUpdate into master

This commit is contained in:
2020-03-31 22:47:15 +02:00
committed by Gitea
3 changed files with 33 additions and 10 deletions

View File

@ -20,7 +20,7 @@ Work in progress…
Requirements:
* Transmission for Bitorrent
* A PleasureDome account
* A proper config.json file (see config.template.json)
* A proper PDMameUpdate.json file (see PDMameUpdate.template.json)
* Python3 with the libraries below
- feedparser
- transmission-clutch
@ -48,6 +48,7 @@ import os
import re
import requests
import time
import pathlib
from clutch.core import Client
from tabulate import tabulate
from collections import defaultdict
@ -56,10 +57,18 @@ from urllib.parse import quote
def open_config_file():
"""Reads configuration from config.json file"""
"""Reads configuration from PDMameUpdate.json file"""
logging.info('Opening config file: config.json')
with open('config.json') as config_file:
for loc in os.environ.get("PDMAMEUPDATE_CONF"), "/etc", os.path.expanduser("~"), os.curdir:
if loc is not None:
config_path = loc + '/PDMameUpdate.json'
if pathlib.Path(config_path).is_file():
config_file_loc = config_path
break
logging.info('Opening config file: '+config_file_loc)
config_file = None;
with open(config_file_loc, 'r') as config_file:
config = json.load(config_file)
return config
@ -224,6 +233,10 @@ def update_torrents():
config['mame-directory'],
torrent['remote-name']
)
new_torrent = os.path.join(
config['torrent-directory'],
torrent['remote-name']+'.torrent'
)
client.torrent.remove(torrent['transmission-id'])
os.rename(old_name, new_name)
@ -234,6 +247,9 @@ def update_torrents():
paused=False
)
if args.keep:
t = requests.get(torrent['remote-link'], verify=False)
open(new_torrent, 'wb').write(t.content)
if __name__ == '__main__':
logging.basicConfig(
@ -253,6 +269,11 @@ if __name__ == '__main__':
action='store_true',
help='Display debugging messages'
)
parser.add_argument(
'-k', '--keep',
action='store_true',
help='Keep torrent files localy'
)
parser.add_argument(
'-c', '--countdown',
action='store_true',

View File

@ -1,8 +1,9 @@
{
"mame-directory":"/path/to/your/locol/mame/torrent/target/folders",
"mame-directory":"/path/to/your/local/mame/files/target/folder",
"torrent-directory":"/path/to/your/local/mame/torrent/target/folder",
"transmission-user":"user",
"transmission-password":"pass",
"pleasuredome-user":"user",
"pleasuredome-password":"pass",
"transmission-port":8080
}
}

View File

@ -1,13 +1,13 @@
# PDMameUpdate
Checks available MAME Torrents on PleasureDome
and updates the local versions if more recent
Checks available MAME Torrents on PleasureDome
and updates the local versions if more recent
versions are detected
![Sample output](https://djib.fr/djib/PDMameUpdate/raw/branch/master/screenshot.png)
## Installation
You need to rename `config.template.json` to `config.json` and modify it with the proper information.
You need to rename `PDMameUpdate.template.json` to `PDMameUpdate.json` and modify it with the proper information.
You should have Python3 and a few libraries installed (see header in source code).
@ -20,7 +20,7 @@ pipenv run python3 PDMameUpdate.py
## Usage
```shell
usage: PDMameUpdate.py [-h] [-l] [-d] [-c]
usage: PDMameUpdate.py [-h] [-l] [-d] [-k] [-c]
Update PleasureDome MAME Torrents
@ -28,5 +28,6 @@ optional arguments:
-h, --help show this help message and exit
-l, --log Display more log messages
-d, --debug Display debugging messages
-k, --keep Keep torrent files localy
-c, --countdown Start with a 5 second countdown
```