Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/bash
- # Gettorrent Script by alxrt
- # Version 0.1-alpha
- # Синтаксис:
- # ./gettorrent TOPIC_ID [-h HOST] [-u USERNAME] [-p PASSWORD] [-o filepath]
- # TOPIC_ID: Идентификатор топика, к которому относится торент.
- # -h HOST: Хост трекера. Обычно rutracker.org или pornolab.net ;-)
- # -u USERNAME: Имя пользователя
- # -p PASSWORD: Пароль пользователя
- # -o filepath: Имя сохраняемого файла
- # Настройки
- TR_HOST="rutracker.org"
- TR_USER=""
- TR_PASSWORD=""
- SC_COOKIE="/tmp/gt-$TR_HOST-$TR_USER.ck"
- SC_UA="Mozilla/5.0 (X11; U; Linux x86_64; ru; rv:1.9.2.15) Gecko/20110303 Ubuntu/10.10 (maverick) Firefox/3.6.15"
- SC_FILEPATH=""
- #Functions
- die() {
- echo "Синтаксис:"
- echo "./gettorrent TOPIC_ID [-h HOST] [-u USERNAME] [-p PASSWORD] [-o filepath]"
- echo "TOPIC_ID: Идентификатор топика, к которому относится торент."
- echo "-h HOST: Хост трекера. Обычно rutracker.org или pornolab.net ;-)"
- echo "-u USERNAME: Имя пользователя"
- echo "-p PASSWORD: Пароль пользователя"
- echo "-o filepath: Имя сохраняемого файла"
- }
- waitf() {
- PERIOD="1."`head -n 1 /dev/urandom |md5sum |cut -d " " -f1|sed -e "s/[a-zA-Z\s].//g"`
- sleep 1.$period
- }
- check_auth() {
- if [ -w $SC_COOKIE ]; then
- cookie_data=`cat $SC_COOKIE`
- result=`curl -s -b $SC_COOKIE -c $SC_COOKIE -A "$SC_UA" "http://$TR_HOST/forum/index.php"|grep '<form method="post" action="http://login.rutracker.org/forum/login.php">'`
- if [ -z "$result" ]; then return `true`; else return `false`; fi
- else
- return `false`
- fi
- }
- make_auth(){
- if [ -w $SC_COOKIE ]; then
- cookie_data=`cat $SC_COOKIE`
- curl -s -b $SC_COOKIE -c $SC_COOKIE -A "$SC_UA" -d "login_username=$TR_USER" -d "login_password=$TR_PASSWORD" --data-binary "login=%C2%F5%EE%E4" "http://login.$TR_HOST/forum/login.php">/dev/null
- else
- curl -s -c $SC_COOKIE -A "$SC_UA" -d "login_username=$TR_USER" -d "login_password=$TR_PASSWORD" --data-binary "login=%C2%F5%EE%E4" "http://login.$TR_HOST/forum/login.php">/dev/null
- fi
- }
- get_torrent(){
- if [ -z "$SC_FILEPATH" ]; then
- curl -s -d "" -b $SC_COOKIE -c $SC_COOKIE -A "$SC_UA" -o "[$TR_HOST].t$SC_TOPICID.torrent" -e "http://$TR_HOST/forum/viewtopic.php?t=$SC_TOPICID" "http://dl.$TR_HOST/forum/dl.php?t=$SC_TOPICID"
- else
- curl -s -d "" -b $SC_COOKIE -c $SC_COOKIE -A "$SC_UA" -o $SC_FILEPATH -e "http://$TR_HOST/forum/viewtopic.php?t=$SC_TOPICID" "http://dl.$TR_HOST/forum/dl.php?t=$SC_TOPICID"
- fi
- }
- SC_TOPICID=$1||die
- while shift; do
- case $1 in
- -h)
- shift&&TR_HOST=$1||die
- ;;
- -u)
- shift&&TR_USER=$1||die
- ;;
- -p)
- shift&&TR_PASSWORD=$1||die
- ;;
- -o)
- shift&&SC_FILEPATH=$1||die
- ;;
- esac
- done
- if check_auth; then
- waitf
- get_torrent
- else
- waitf
- make_auth
- waitf
- get_torrent
- fi
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement