All pastes #972953 Raw Edit

Someone

public text v1 · immutable
·published 2008-04-05 20:50 UTC
rendered paste body
### YouTube Searching script. v0.1
### Made by Mookie		
### Contact me at Efnet for more information or suggestions
### V0.2 because of youtube source code changement.

package require http

### Settings ###

set youtube(timeout) "600000"		;# Youtube geturl timeout. (better leave this default)
set youtube(results) "5"		;# Results to display
set youtube(trigger) "!youtube"	;# Search trigger

#########################################################
## Don't edit below unless you know what you're doing. ##
#########################################################


bind pub - $::youtube(trigger) youtube

proc youtube {nick uhost hand chan arg} {
	global youtube
	if {$arg == ""} { putmsg $nick "Please use: $::youtube(trigger) KEYWORD"; return }
	set form [http::formatQuery search_query $arg search search]
	set tok [http::geturl http://youtube.com/results?$form -timeout $::youtube(timeout)]
	set data [http::data $tok]
	regsub -all {<b>|</b>} $data {} data
	http::cleanup $tok
	set a "0"
	while {[regexp -- {<a href=\"/watch\?v=(.*?)\">(.*)$} $data -> number data]} {
		if {$a == $::youtube(results)} { break }
		regexp -- {<img src=".*?" class=".*?" title="(.+?)" alt="video">} $data -> title
		putmsg $chan "\[Title: $title Link:http://youtube.com/watch?v=$number Description:$title\]"
		incr a
	}
	if {![info exists title]} { putmsg $chan "Nothing found for $arg" }
}