Improve csv parsing and error handling in peerflix
This commit is contained in:
parent
2db9446294
commit
554b794ad2
|
@ -5,7 +5,8 @@ player=mpv
|
||||||
data_file=$HOME/Documents/Misc/peerflix-db.csv
|
data_file=$HOME/Documents/Misc/peerflix-db.csv
|
||||||
|
|
||||||
parse_csv() {
|
parse_csv() {
|
||||||
show_name=$(echo "$1" | cut -d "=" -f 3 | awk -F "S[0-9]|[S|s]eason|[C|c]omplete" '{print $1}' | tr -d "[:digit:]%" | tr +. " " | sed -e 's/[[:space:]]*$//')
|
show_name=$(echo "$1" | cut -d "=" -f 3 | awk -F "S[0-9]|[S|s]eason|[C|c]omplete" '{print $1}' |
|
||||||
|
tr -d "[:digit:]" | tr "[:punct:]" " " | sed -e 's/[[:space:]]*$//')
|
||||||
episode=$(awk -F ',' -v var="$show_name" '$1 ~ var {print $2}' "$data_file")
|
episode=$(awk -F ',' -v var="$show_name" '$1 ~ var {print $2}' "$data_file")
|
||||||
line_number=$(awk -F ',' -v var="$show_name" '$1 ~ var {print NR}' "$data_file")
|
line_number=$(awk -F ',' -v var="$show_name" '$1 ~ var {print NR}' "$data_file")
|
||||||
}
|
}
|
||||||
|
@ -15,6 +16,15 @@ increment_episode() {
|
||||||
sed -e "$line_number s/$episode/$next_episode/" -i "$data_file"
|
sed -e "$line_number s/$episode/$next_episode/" -i "$data_file"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
usage() {
|
||||||
|
echo "Usage: peerflix <magnet link>"
|
||||||
|
exit 1
|
||||||
|
}
|
||||||
|
|
||||||
|
if [ $# -ne 1 ]; then
|
||||||
|
usage
|
||||||
|
fi
|
||||||
|
|
||||||
parse_csv "$1"
|
parse_csv "$1"
|
||||||
if [ -z "$episode" ]; then
|
if [ -z "$episode" ]; then
|
||||||
webtorrent download "$1" -s -o "$directory" --"$player"
|
webtorrent download "$1" -s -o "$directory" --"$player"
|
||||||
|
|
Loading…
Reference in New Issue