- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 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 с дебильным алгоритмом отсеивания альбомов от картинок.