Comments
Join Hawkee
|
Login
Search
in
Code Snippets
Images
Products
Reviews
Forum
Home
Platforms
.NET
C++
Cold Fusion
CSS
Hi5
Java
Javascript
JSP
mIRC
MySpace
mySQL
OpenSocial
Perl
PHP
Python
Ruby / Rails
TCL
Images
Recently Liked
Most Liked
Most Comments
Snippets
.NET (6)
C++ (2)
Cold Fusion (1)
CSS (2)
Hi5 (1)
Java (1)
Javascript (10)
JSP (1)
mIRC (4,112)
MySpace (2)
mySQL (1)
OpenSocial (2)
Perl (8)
PHP (137)
Python (3)
Ruby / Rails (6)
TCL (20)
Products
Computers (11,665)
Electronics (7,706)
Software (1,000)
Video Games (3,640)
Reviews
Computers (5,852)
Electronics (15,711)
Software (2,169)
Video Games (7,196)
Posts
Latest Likes
Latest Comments
All Activities
Comments
Images
Scripts
Code Snippets
Products
Reviews
Profiles
Forum
username
password
auto login
Home
>
Code Snippets
>
[-Srankie-]'s Snippets
>
mIRC
Download dialog
mIRC Code
+ 0
likes
Like it
Please
Register
to submit score.
Average Score
3.0
Scores Submitted
1
Date Added
Jun 14, 2008
Last Updated
Jun 14, 2008
Tags
dialog
dl
download
pic
Introduction
You can download all pictures of a site, or just supply links, you can supply multiply links too.
Grab the Code
dialog Download { title "Download pictures" size -1 -1 221 149 option dbu text "", 2, 49 15 0 8 tab "Single/Multiple pictures", 1, 0 -2 222 151 edit "", 4, 6 16 180 10, tab 1 return autohs list 5, 6 26 133 103, tab 1 sort size hsbar vsbar button "Add", 6, 187 16 28 10, tab 1 text "", 7, 141 27 74 102, tab 1 button "Download all", 8, 7 130 37 10, tab 1 button "Download selected", 9, 46 130 52 10, tab 1 button "Clear list", 10, 100 130 37 10, tab 1 tab "All pictures of a site", 3 text "", 11, 141 27 74 102, tab 3 edit "", 12, 6 16 180 10, tab 3 return autohs button "Find", 13, 187 16 28 10, tab 3 list 14, 6 26 133 103, tab 3 sort size hsbar vsbar button "Download all", 15, 7 130 37 10, tab 3 button "Download selected", 16, 46 130 52 10, tab 3 button "Clear list", 17, 100 130 37 10, tab 3 } menu * { Download:Download } alias Download dialog -md Download Download on *:Dialog:Download:*:*:{ if ($devent == sclick) { if ($did == 6) { did -r $dname 7 var %r $remove($did(4),http://),%y $ticks,%1 $gettok(%r,1,47),%o $pos(%r,/),%2 $mid(%r,%o,$calc(1+$pos(%r,/,$count(%r,/))-%o)),%u $remove(%r,%1,%2),%4 $iif($count(%u,.),$gettok(%u,$calc(1+$v1),46)),%3 $remove(%u,%4),%i %3 $+ %4 if (!%i) { did -ra $dname 7 Invalid link. } if ($exists($mircdirDownload $+ \ $+ %i)) || ($exists($mircdirDownload $+ \ $+ $replace(%i,jpg,jpeg,jpeg,jpg))) { did -ra $dname 7 Already exists } else { did -a $dname 5 $did(4) did -r $dname 4 } } if ($did == 8) { did -r $dname 7 if (!$did(5).lines) did -ra $dname 7 Suplly a link. else { var %a 1 .hfree -w Download .sockclose DownloadB.* .sockclose DownloadA.* .mkdir Download while (%a <= $did(5).lines) { hadd -m Download $calc($hget(Download, 0).item + 1) $did($dname,5,%a) var %r $remove($hget(Download, %a),http://),%y $ticks,%1 $gettok(%r,1,47),%o $pos(%r,/),%2 $mid(%r,%o,$calc(1+$pos(%r,/,$count(%r,/))-%o)),%u $remove(%r,%1,%2),%4 $iif($count(%u,.),$gettok(%u,$calc(1+$v1),46)),%3 $remove(%u,%4),%i %3 $+ %4 if ($exists($qt($mircdirDownload $+ \ $+ %i))) || ($exists($qt($mircdirDownload $+ \ $+ $replace(%i,jpg,jpeg)))) { did -ra $dname 7 Already exists ( $+ $hget(Download, %a) $+ ) | var %a $calc($did(5).lines + 5) } inc %a } var %r $remove($hget(Download, 1),http://),%y $ticks,%1 $gettok(%r,1,47),%o $pos(%r,/),%2 $mid(%r,%o,$calc(1+$pos(%r,/,$count(%r,/))-%o)),%u $remove(%r,%1,%2),%4 $iif($count(%u,.),$gettok(%u,$calc(1+$v1),46)),%3 $remove(%u,%4),%i %3 $+ %4 sockopen DownloadA.1 %1 80 sockmark DownloadA.1 %1 %2 %3 %4 } } if ($did == 9) { if (!$did(5).seltext) { did -ra $dname 7 Select a link, or add one. } else { did -r $dname 7 .hfree -w Download .sockclose DownloadB.* .sockclose DownloadA.* .mkdir Download hadd -m Download 1 $did(5).seltext var %r $remove($hget(Download, 1),http://),%y $ticks,%1 $gettok(%r,1,47),%o $pos(%r,/),%2 $mid(%r,%o,$calc(1+$pos(%r,/,$count(%r,/))-%o)),%u $remove(%r,%1,%2),%4 $iif($count(%u,.),$gettok(%u,$calc(1+$v1),46)),%3 $remove(%u,%4),%i %3 $+ %4 sockopen DownloadA.1 %1 80 sockmark DownloadA.1 %1 %2 %3 %4 } } if ($did == 10) { did -r $dname 5 } if ($did == 13) { did -r $dname 11 if (!$did(12)) { did -ra $dname 11 Supply a link } else { var %x $remove($did(12),http://), %a $gettok(%x,1,47), %b $iif($gettok(%x,2-,47),/ $+ $v1,/), %check $iif($count($remove(%a,www.),.),1,0) if (!%check) { did -ra $dname 7 Invalid link } else { did -r $dname 14 sockopen Pictures %a 80 sockmark Pictures %a %b } } } if ($did == 15) { did -r $dname 11 if (!$did(14).lines) did -ra $dname 11 Search a site for pictures first. else { var %a 1 .hfree -w Download .sockclose DownloadB.* .sockclose DownloadA.* .mkdir Download while (%a <= $did(14).lines) { hadd -m Download $calc($hget(Download, 0).item + 1) $did($dname,14,%a) var %r $remove($hget(Download, %a),http://),%y $ticks,%1 $gettok(%r,1,47),%o $pos(%r,/),%2 $mid(%r,%o,$calc(1+$pos(%r,/,$count(%r,/))-%o)),%u $remove(%r,%1,%2),%4 $iif($count(%u,.),$gettok(%u,$calc(1+$v1),46)),%3 $remove(%u,%4),%i %3 $+ %4 if ($exists($qt($mircdirDownload $+ \ $+ %i))) || ($exists($qt($mircdirDownload $+ \ $+ $replace(%i,jpg,jpeg)))) { did -ra $dname 11 Already exists ( $+ $hget(Download, %a) $+ ) | halt } inc %a } var %r $remove($hget(Download, 1),http://),%y $ticks,%1 $gettok(%r,1,47),%o $pos(%r,/),%2 $mid(%r,%o,$calc(1+$pos(%r,/,$count(%r,/))-%o)),%u $remove(%r,%1,%2),%4 $iif($count(%u,.),$gettok(%u,$calc(1+$v1),46)),%3 $remove(%u,%4),%i %3 $+ %4 sockopen DownloadB.1 %1 80 sockmark DownloadB.1 %1 %2 %3 %4 } } if ($did == 16) { did -r $dname 11 if (!$did(14).seltext) { did -ra $dname 11 Please select one/Find pictures on a site. } else { .hfree -w Download .sockclose DownloadB.* .sockclose DownloadA.* .mkdir Download hadd -m Download 1 $did(14).seltext var %r $remove($hget(Download, 1),http://),%y $ticks,%1 $gettok(%r,1,47),%o $pos(%r,/),%2 $mid(%r,%o,$calc(1+$pos(%r,/,$count(%r,/))-%o)),%u $remove(%r,%1,%2),%4 $iif($count(%u,.),$gettok(%u,$calc(1+$v1),46)),%3 $remove(%u,%4),%i %3 $+ %4 sockopen DownloadB.1 %1 80 sockmark DownloadB.1 %1 %2 %3 %4 } } if ($did == 17) { did -r $dname 14 } } } on *:SOCKOPEN:DownloadA.*:{ tokenize 32 $sock($sockname).mark sockwrite $sockname $+(GET $2,$3,$4 $chr(32) HTTP/1.1,$lf,Host: $1,$lf,$lf) :error if ($error) { reseterror did -ra Download 7 Invalid link: $hget(Download, $gettok($sockname,2,46)) } } on *:SOCKREAD:DownloadA.*:{ if ($sockerr) { did -ra Download 7 Socket error in: $hget(Download, $gettok($sockname,2,46)) } else { var %read 1, %check $numtok($sock($sockname).mark,32) while (%read && %check > 3) { sockread %read if ($regex(%read,/Content\-Type: .*?\/([^\s;]+)/i)) var %t $iif($regml(1) != plain,$v1) if ($regex(%read,/Content\-Length: (\d+)/i)) var %l $regml(1) } if (%check > 3) { sockmark $sockname $gettok($sock($sockname).mark,3,32) $+ %t %l } tokenize 32 $sock($sockname).mark while $sock($sockname).rq { var %file $qt($mircdir $+ Download\ $+ $regsubex($1,/[^a-z0-9_ \.]/gi,)), %progress $calc(((($v1 + $lof(%file)) / $2 * 100) + (($gettok($sockname,2,46) * 100) - 100)) / $hget(Download, 0).item) did -ra Download 7 Download progress: $round(%progress,2) $+ % sockread &b bwrite %file -1 -1 &b } if ($lof(%file) >= $2) { var %s $gettok($sockname,2,46) if (%s == $hget(Download, 0).item) { did -ra Download 7 Downloading complete } else { var %r $remove($hget(Download, $calc(%s + 1)),http://),%y $ticks,%1 $gettok(%r,1,47),%o $pos(%r,/),%2 $mid(%r,%o,$calc(1+$pos(%r,/,$count(%r,/))-%o)),%u $remove(%r,%1,%2),%4 $iif($count(%u,.),$gettok(%u,$calc(1+$v1),46)),%3 $remove(%u,%4),%i %3 $+ %4 sockopen DownloadA. $+ $calc(%s + 1) %1 80 sockmark DownloadA. $+ $calc(%s + 1) %1 %2 %3 %4 } } } } on *:SOCKOPEN:Pictures:{ tokenize 32 $sock($sockname).mark sockwrite -nt $sockname GET $2 HTTP/1.1 sockwrite -nt $sockname Host: $1 $+ $str($crlf,2) } on *:SOCKREAD:Pictures:{ if ($sockerr) { did -ra Download 11 Socket error } else { var %read sockread %read if ($regex(%read,/<img.*src="(.+)"/i)) { var %r $remove($regml(1),http://),%y $ticks,%1 $gettok(%r,1,47),%o $pos(%r,/),%2 $mid(%r,%o,$calc(1+$pos(%r,/,$count(%r,/))-%o)),%u $remove(%r,%1,%2),%4 $iif($count(%u,.),$gettok(%u,$calc(1+$v1),46)),%3 $remove(%u,%4),%i %3 $+ %4 if (%i) { var %reg $regml(1) var %a 0 while (%a <= $did(Download,14).lines) { if ($did(Download,14,%a) == $iif($gettok($sock($sockname).mark,1,32) !isin $gettok(%reg,1,34),$v1 $+ $iif($left($v2,1) != /,/) $+ $gettok(%reg,1,34),$gettok(%reg,1,34))) { var %x 1 } inc %a } if (!%x) did -a Download 14 $remove($iif($gettok($sock($sockname).mark,1,32) !isin $gettok(%reg,1,34),$v1 $+ $iif($left($v2,1) != /,/) $+ $gettok(%reg,1,34),$gettok(%reg,1,34)),http://) } } } } on *:SOCKOPEN:DownloadB.*:{ tokenize 32 $sock($sockname).mark sockwrite $sockname $+(GET $2,$3,$4 $chr(32) HTTP/1.1,$lf,Host: $1,$lf,$lf) } on *:SOCKREAD:DownloadB.*:{ if ($sockerr) { did -ra Download 11 Socket error in: $hget(Download, $gettok($sockname,2,46)) } else { var %read 1, %check $numtok($sock($sockname).mark,32) while (%read && %check > 3) { sockread %read if ($regex(%read,/Content\-Type: .*?\/([^\s;]+)/i)) var %t $iif($regml(1) != plain,$v1) if ($regex(%read,/Content\-Length: (\d+)/i)) var %l $regml(1) } if (%check > 3) { sockmark $sockname $gettok($sock($sockname).mark,3,32) $+ %t %l } tokenize 32 $sock($sockname).mark while $sock($sockname).rq { var %file $qt($mircdir $+ Download\ $+ $regsubex($1,/[^a-z0-9_ \.]/gi,)), %progress $calc(((($v1 + $lof(%file)) / $2 * 100) + (($gettok($sockname,2,46) * 100) - 100)) / $hget(Download, 0).item) did -ra Download 11 Download progress: $round(%progress,2) $+ % sockread &b bwrite %file -1 -1 &b } if ($lof(%file) >= $2) { var %s $gettok($sockname,2,46) if (%s == $hget(Download, 0).item) { did -ra Download 11 Downloading complete } else { var %r $remove($hget(Download, $calc(%s + 1)),http://),%y $ticks,%1 $gettok(%r,1,47),%o $pos(%r,/),%2 $mid(%r,%o,$calc(1+$pos(%r,/,$count(%r,/))-%o)),%u $remove(%r,%1,%2),%4 $iif($count(%u,.),$gettok(%u,$calc(1+$v1),46)),%3 $remove(%u,%4),%i %3 $+ %4 sockopen DownloadB. $+ $calc(%s + 1) %1 80 sockmark DownloadB. $+ $calc(%s + 1) %1 %2 %3 %4 } } } }
Comments
(0)
RSS
Go to Bottom
Enter comment here..
Please
Register
or
Login
to start posting comments.
[-Srankie-]
Last seen:
Jun 15, 2008
Profile
Snippets
(3)
Comments Received
(10)
Comments Submitted
(3)
My Snippet Tags
alphabet
dialog
dl
download
info
information
pic
race
rs
runescape
srankie
Contact
Add to Friends
Send Private Message
Sponsors