Opisów dotyczących pobierania plików z feedów popełniłem co najmniej dwa(pierwszy,drugi). Wykorzystałem w nich naprawdę potężne narzędzie jakim jest FlexGet oraz swietny klient torrentów transmission. Jednak dotyczyły to dużych Linuksów, poniżej opisy dotyczące OpenWrt.
Taka funkcjonalność jest przed wszystkim niezwykle wygodna, jednak żeby z niej skorzystać trzeba dysponować większą przestrzenią na dysku, dlatego zaleca się przeniesienie systemu na dysk zewnętrzny.
Musimy zainstalować następujące pakiety:
opkg update opkg install python python-sqlite3
Oprócz pakietów wymaganych(python itd.), instalujemy.
opkg update opkg install python-openssl subversion-client python-expat
Pobieramy najnowszą - niestabilną wersję FlexGet za pomocą svn. Ścieszka jest dowolna, tutaj domyślny katalog domowy usera 'root'
cd /root/ svn co http://svn.flexget.com/trunk flexget-dev
Instalujemy FlexGet, trochę bo trwa
cd flexget-dev python bootstrap.py
Instalujemy transmissionrpc, umożliwiający współprace z transmission
bin/easy_install transmissionrpc
Tworzymy plik konfiguracyjny, w którym umieszczamy feed RSS i wybrane seriale, filmy
mkdir /root/.flexget nano /root/.flexget/config.yml
PRZYKŁAD 1:
presets:
tv_bt:
series:
settings:
hdtv:
quality: hdtv
720p:
quality: 720p
hdtv:
- Fringe
- Smallville
720p:
- Lie to Me
- The Event
set:
path: /mnt/sdb1/%(series_name)s
transmissionrpc:
host: 127.0.0.1
port: 9091
removewhendone: True
feeds:
shows_torrent:
rss: http://rss.bt-chat.com/?cat=9
preset: tv_bt
W tym przykładzie działanie jest proste. Pobiera odpowiednie seriale z wybranych jakościach obrazu. Pobrane plik są automatycznie usuwane z klienta i przenoszone do /mnt/sdb1/(Nazwa-Serialu).
PRZYKŁAD 2:
global:
email:
from: from@gmail.com
to: to@gmail.com
smtp_host: smtp.gmail.com
smtp_port: 587
smtp_login: true
smtp_username: gmailUser
smtp_password: gmailPassword
smtp_tls: true
presets:
tv_bt:
series:
settings:
hdtv:
quality: hdtv
720p:
quality: 720p
hdtv:
- Fringe
- Smallville
720p:
- Lie to Me
- The Event
set:
path: /mnt/sdb1/%(series_name)s
transmissionrpc:
host: 127.0.0.1
port: 9091
removewhendone: True
feeds:
shows_torrent:
rss: http://rss.bt-chat.com/?cat=9
preset: tv_bt
email:
active: True
Przykład podobny do pierwszego z tą różnicą, że zostaniemy poinformowani o pobranym pliku emailem(tutaj gmail).
Na stronie projektu jest przedstawione jak wykorzystać FlexGet z transmission w sposób bardziej zaawansowany.
Możemy sprawdzić czy układ pliku jet poprawny
bin/flexget --check
lub pobrać wybrane torrenty (opcja -v czyli tryb verbose - więcej informacji w tym błędy)
bin/flexget -v
ewentualnie ciche działanie
bin/flexget -q
Pozostaje dodać wszystko do crona
crontab -e */30 * * * * /root/flexget_dev/bin/flexget -q
