1. bash / Говнокод #3000

    −136

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    #! /bin/bash
    
    # настройки
    # id художника (athid) берется из URL вида http://www.pixiv.net/member_illust.php?id=18530, где 18530 и есть искомый параметр.
    pixid=LOGIN
    pixpass=PASSWORD
    picnum=$2
    let "pagenum=picnum/20+1"
    athid=$1
    
    # логинимся (куки в pixiv.txt)
    AUTH=`curl -s -c pixiv.txt -F"mode=login" -F"pass=${pixpass}" -F"pixiv_id=${pixid}" -F"skip=1" http://www.pixiv.net/index.php`
    
    # качаем все страницы с картинками и парсим их на ходу
    for ((i=1;i<=$pagenum;i++))
    do
    wget --load-cookies=pixiv.txt "http://www.pixiv.net/member_illust.php?id=$athid&p=$i" -O - --referer="http://www.pixiv.net/"|pcregrep -o 'http\:\/\/img\d{1,3}\.pixiv\.net\/img\/[^\"]+'|sed 's/_s//' >> get.pixiv.txt
    done;
    
    # качаем все картинки, которые нашли
    
    wget -nc -i get.pixiv.txt --referer="http://www.pixiv.net/"
    
    cat get.pixiv.txt | sed 's/http\:\/\/img[^\/]\+\/img\/[^\/]\+\///' > list1
    ls *.jpg *.png *.gif > list2
    cat list1 list2|sort|uniq -u|pcregrep -o '[^\.]+' > list3
    for i in `cat list3`
    do
    wget "http://www.pixiv.net/member_illust.php?mode=manga&illust_id=$i&type=scroll"  --load-cookies=pixiv.txt  --referer="http://www.pixiv.net/" -O -|pcregrep -o 'http\:\/\/img\d{1,3}\.pixiv\.net\/img\/[^\"]+'>> get.pixiv.albums.txt
    done;
    
    wget -nc -i  get.pixiv.albums.txt --referer="http://www.pixiv.net/"
    
    # удаляем палево
    
    #rm -f pixiv.txt get.pixiv*.txt list*

    Качалка картинок с pixiv.net с дебильным алгоритмом отсеивания альбомов от картинок.

    Запостил: Radjah, 13 Апреля 2010

    Комментарии (16) RSS

    • ХУЯСЕ ЧУВАК ТЫ ЗНАЕШ БАШ И КАЧАЕШ КАРТИНКИ С КАКОГОТО БЫДЛОСАЙТА ТЫ ОХУЕНЕН В ТОП ТЕБЯ СРОЧНА
      Ответить
    • гет
      Ответить
    • и всё это под винду =)
      Ответить
    • В чем говнокод?
      Ответить
    • ОМГ, строки на два экрана улезающие вправо доставляют.
      Выработайте в себе привычку ограничиваться 80ю символами на строчку...
      Ответить
      • Какой в этом смысл, если редактор сам переносит?
        Ответить
        • Такой, что если ты пишешь скрипт под новой бубунтой в каком-нить навороченном редакторе - это одно.

          А править его на таргет системе в консоли, где ничего, кроме vi, может не быть - это другое.

          Ну и тем более, на данном сайте, например, ничего автоматом не переносится и смотрится отвратно.
          Ответить
        • Вот только читатется перенесенная редактором строка хуже чем с прокруткой
          Ответить
    • Я вот нихуя этой админской херни не понимаю, но если соль реально в 24-26, то спрашивается нахер было столько остального говнища постить?
      Ответить
    • Я нифига не понял, но 24-я доставила. Много экранирования не бывает, говорите?!
      Ответить
      • В принципе паттерн можно мальца переделать.
        Ответить
    • Вот жеж юбаный С++!
      Ответить
    • это же чистый си
      Ответить

    Добавить комментарий