How to grab URLs from IRC channels ,save them to mysql, and display them on a webpage: [http://rufus.o-town.de/eggdrop/pub/scripts1.x/urlgrab.tcl urlgrab.tcl v0.7] by RufusDE <Thomas.Koester@rz.Uni-Osnabrueck.DE> already handles all the [RegularExpressions regex]'ing nicely, and because [HackerAttitude no problem should ever be solved twice], we just take this one to start with. It only logs to a text file though, but we have [http://rufus.o-town.de/(en)/eggdrop/pub/mysql/libmysqltcl.so-linux-glibc2-x86.tar.gz libmysqltcl] installed (on s23.org) so we can add MySql commands like this: # added sql insert by mutante set db [mysqlconnect -host localhost -user <user> -password <password> -db ircurls] mysqlexec $db "INSERT INTO urlgrab SET url="$url",chan="$lchan",nick="$nick",date=now()" puthelp "privmsg mutante :Added to sql-db : url: $url chan: $lchan nick: $nick date: $ctime" mysqlclose $db i inserted this between row 51 - 57 in the original script. replace <user> and <password> with your mysql user / pass. You need to create a database "ircurls" with a table "urlgrab" or whatever you like, and the table structure is : Table structure for table `urlgrab` CREATE TABLE urlgrab ( id int(5) unsigned NOT NULL auto_increment, url varchar(255) default NULL, nick varchar(32) default NULL, chan varchar(64) default NULL, date datetime NOT NULL default '0000-00-00 00:00:00', PRIMARY KEY (id) ) TYPE=MyISAM; *Now to the output part / webinterface: You can use f.e. php (or perl) to read from mysql: Example: <?php $db = mysql_connect("localhost", "<user>", "<pass>"); mysql_select_db("ircurls",$db); $result = mysql_query("SELECT * FROM urlgrab",$db); $urlnum=0; echo "<html><head></head><body><table border="1"><tr><th colspan="5" >s23 - IRC URL log</th></tr> "; echo "<tr><th>id</th><th>URL</th><th>nick</th><th>chan</th><th>date</th></tr> "; while ($myrow = mysql_fetch_row($result)) { printf("<tr><td>%s</td><td><a target="new" href="%s">%s</a></td><td>%s</td><td>%s</td><td>%s</td></tr> ", $myrow[0], $myrow[1], $myrow[1], $myrow[2], $myrow[3], $myrow[4],$myrow[5]); $urlnum++; } echo "<tr><td colspan="5">Total URLs found: $urlnum</td></tr>"; echo "</table></body></html>"; which looks something like: http://mutante.s23.org/urllog.php While creating all this i found out Rufus also offers [http://rufus.o-town.de/eggdrop/pub/mysql/ mysql_urlgrab.tcl] , DOH! So you could as well just use that ,but i didnt check it out yet ;) Rufus is also the maintainer of libmysqltcl himself it seems, so he should know pretty good. mutante
TclScripts/UrlGrab
Recent changes
2401:4900:1F2A:8FFF:0:0:19A:5EFE • 1 month ago
Harsharose • 1 month ago
Harsharose • 2 months ago
2607:FB90:EAC3:85A9:897A:CA2C:7CC3:E11B • 3 months ago