Dette er et script til din BOT som gør det muligt for brugerne på din channel at søge efter film på YouTube.
Kode
;~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~
; YouTube Video Searcher *
; Made by MountainDew ~
; IRC.DeltaAnime.Net ? #Lindrian #mIRC-Scripting *
; US.UnderNet.Org ? #Hawkee.com #mircscripting ~
;*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*
on $*:text:/^[!@.](y(ou)?tube|yt)\b/Si:#:{
set %y.chan $chan
youtube $2-
}
alias youtube {
unset %N %ymsg
set %ymsg $iif(%y.chan,msg %y.chan,echo -a)
if (!$1) {
%ymsg Syntax: $iif(%y.chan,!,/) $+ YouTube [search criteria]
halt
}
if ($sock(youtube)) {
%ymsg Please wait until the search has been completed.
halt
}
set %y.words $replace($$1-,$chr(32),+)
$iif(%y.chan,describe $v1 searches,echo -a Searching) for YouTube videos matching $qt( $+ $replace(%y.words,+,$chr(32)) $+ ) $+ ...
sockopen youtube www.youtube.com 80
}
on *:SOCKOPEN:youtube: {
sockwrite -nt $sockname GET /results?search_query= $+ %y.words HTTP/1.1
sockwrite -nt $sockname Host: www.youtube.com
sockwrite -nt $sockname $crlf
}
on *:SOCKREAD:youtube: {
if ($sockerr) {
%ymsg Socket Error: $sockerr
sockclose $sockname
unset %y.* %N %ymsg
}
else {
var %x
sockread %x
if ($regex(%x,/No Videos found for <span >'.+'/i)) {
%ymsg The search for $qt( $+ $replace(%y.words,+,$chr(32)) $+ ) returned no results.
sockclose $sockname
unset %y.* %N %ymsg
}
if ($regex(%x,/<a href="(\/watch\?v=[^"]+)" >/i)) set %y.url http://www.youtube.com $+ $regml(1)
if ($regex(%x,/title="(.+)" alt="video"><\/a>/i)) set %y.title $regml(1)
if ($regex(%x,/<\/span> (\d+ .+ ago)<br\/>/i)) set %y.added $regml(1)
if ($regex(%x,/\/user\/(.+)"/i)) set %y.user $regml(1)
if ($regex(%x,/Views:<\/span> (.+)<br\/>/i)) set %y.views $regml(1)
if ($regex(%x,/icn_star_full/ig)) inc %y.star $v1
if ($regex(%x,/icn_star_half/i)) inc %y.star .5
if ($regex(%x,/<img class="ratingVS ratingVS-.+" alt="(.+)" src=/i)) set %y.rating $regml(1)
if (</div> <!-- end search results --> isin %x) sockclose $sockname
if ($regex(%x,/"runtime">(.+)<\/div>/i)) {
set %y.length $regml(1)
inc %N
%ymsg 9 $+ $chr(149) 4Title: $hf(%y.title) 4Added: %y.added 4User: $hf(%y.user) 4Length: %y.length 4Views: %y.views 4Rating: $iif(%y.rating,$v1,0) $+ /5 4URL: %y.url
unset %y.*
if (%N == 3) {
sockclose $sockname
unset %N %ymsg
}
}
}
}
alias hf return $remove($replace($1-,",",>,>,<,<,&,&, ,$chr(160)),?,$chr(9))
Når dette er gjort, så er det meget simpelt at bruge.
Man skriver simpelthen følgende i channelen !YouTube "det du vil søge efter" (uden "" self), og så finder botten de 3. mest besøgte film som indeholder det/de ord som du har søgt efter.