]> code.delx.au - webdl/blobdiff - README.md
Handle SBS missing video
[webdl] / README.md
index 0f573adbc997f236d69055e9f05baca262ddad82..1dd4945853714ca3ce7bea7de82174c74a60607d 100644 (file)
--- a/README.md
+++ b/README.md
@@ -2,35 +2,58 @@
 
 WebDL is a set of Python scripts to grab video from online Free To Air Australian channels.
 
-## Requirements
 
-* [Livestreamer](http://docs.livestreamer.io/install.html)
-* python 2.7 or 3.2+
-* pycrypto -- Livestreamer needs this for some videos
-* python-lxml
-* ffmpeg / libav-tools
+## News
 
-## Installation
+### 2017-02-24
+* Now requires Python3, use the `python2` branch if you need the old version.
+* Recommended installation is now with `virtualenv` and `pip` to install dependencies.
+* Removed some custom logic in favour of the `requests` and `requests_cache` libraries.
+* `autograbber.py` can write to multiple directories, previous command line args are still supported.
 
-### Arch Linux
-    pacman -S livestreamer python-crypto python-lxml ffmpeg
 
-### Ubuntu
-    apt-get install livestreamer python-crypto python-lxml libav-tools
+## Installation using pip
 
-### Mac OS X
+Install the following packages using your package manager:
 
-Warning, this is untested!
+* Python 3.2+ (including dev package)
+* ffmpeg or libav-tools
 
-    brew install python3 ffmpeg
-    pip3 install livestreamer pycrypto lxml
+Clone the WebDL repository:
+```
+git clone https://bitbucket.org/delx/webdl
+cd webdl
+```
+
+Set up a Python virtualenv and use pip to install the other dependencies:
+```
+virtualenv --python python3 .virtualenv
+. .virtualenv/bin/activate
+pip install -r requirements.txt
+```
 
-### Then get WebDL itself
-    hg clone https://bitbucket.org/delx/webdl
-    cd webdl
-    python3 ./grabber.py
+Whenever you want to run WebDL you must source the `.virtualenv/bin/activate` script from your shell.
 
 
+## Installation on Debian/Ubuntu
+
+Install Python 3 and needed libraries:
+```
+apt-get install python3 python3-lxml python3-requests python3-requests-cache
+```
+
+
+Install Livestreamer and PyCrypto. Ubuntu packages this as Python 2:
+```
+apt-get install livestreamer python-crypto
+```
+
+
+Install ffmpeg:
+```
+apt-get install ffmpeg
+```
+
 ## Interactive usage (grabber.py)
 
 You can run WebDL interactively to browse categories and episode lists and download TV episodes.
@@ -70,21 +93,21 @@ The bolded parts are what you type. Note that you can go back on any screen by t
 
 ## Cron scripted usage (autograbber.py)
 
-I have a shell script which looks something like this, I run it daily from crontab.
+You can schedule a regular download of your favourite shows. This example uses `chronic` from `moreutils`.
 
 ```
 # m    h  dom mon dow   command
-  0    1   *   *   *     ./autograbber.py /path/to/video-dir/ /path/to/patterns.txt
+  0    1   *   *   *     timeout 6h chronic $HOME/webdl/autograbber-cron.sh /videos/ABC4Kids /videos/Insight
 ```
 
-The patterns.txt file should contain shell-style globs, something like:
+Each of these directories should contain a `.patterns.txt` with shell-style globs:
 
 ```
-ABC iView/*/QI*/*
-SBS/Programs/Documentary/*/*
+ABC iView/By Channel/ABC4Kids/*/*
+SBS/Channel/SBS1/Insight*
 ```
 
-The above will download all episodes of QI from ABC as well as every SBS documentary. Whenever an episode is downloaded it is recorded into downloaded_auto.txt. Even if you move the files somewhere else they will not be redownloaded.
+Whenever an episode is downloaded it is recorded into `.downloaded_auto.txt`. Even if you move the files somewhere else they will not be redownloaded.
 
 
 ## Bug reports