Advertisement
Guest User

Untitled

a guest
Jul 29th, 2019
125
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
mIRC 5.90 KB | None | 0 0
  1. alias -l Getbingsearch {
  2.   ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  3.   ;;;;;;;;;;;;;;;Start of Simple Setup;;;;;;;;;;;;;;;
  4.   ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  5.   ;Change %logo to the logo you want at the start of each line
  6.   var %logo $+($chr(3),02,$chr(44),07,$chr(2),Bing,$chr(15))
  7.   ;Change %maxresults to the number of results you want 1 to 8
  8.   var %maxresults 4
  9.   ;Change %textcolor to the color you want normal text
  10.   var %textcolor $+($chr(3),04)
  11.   ;Change %linkcolor to the color you want for links
  12.   var %linkcolor $+($chr(31))
  13.   ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  14.   ;;;;;;;;;;;;;;;;;;;;End Setup;;;;;;;;;;;;;;;;;;;;;;;;;;;
  15.   ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;      
  16.   $1-2 $+(%textcolor,Searching) %logo ........
  17.   var %sockname $+(bingsearch,$network,$2,$ticks)
  18.   sockopen %sockname www.bing.com 80
  19.   svar %sockname output $1-2
  20.   svar %sockname get $+(/search?q=,$urlencode($3-))
  21.   svar %sockname logo %logo
  22.   svar %sockname maxresults %maxresults
  23.   svar %sockname textcolor %textcolor
  24.   svar %sockname linkcolor %linkcolor
  25. }
  26.  
  27. #bingsearch on
  28. On $*:Text:/^(\+|-|!|@)bing.*/Si:#: {
  29.   var %action $regml(1)
  30.   if (%action isin +-) && ($regex($nick($chan,$nick).pnick,/(!|~|&|@)/)) {
  31.     if (%action == +) {
  32.       if ($istok(%bingsearchChanList,$+($network,$chan),32)) { msg $chan $nick $chan is already running the bingsearch script }
  33.       else {
  34.         .enable #bingsearch
  35.         Set %bingsearchChanList $addtok(%bingsearchChanList,$+($network,$chan),32)
  36.         msg $chan $nick has activated the bingsearch script for $chan .
  37.       }
  38.     }
  39.     else {
  40.       if (!$istok(%bingsearchChanList,$+($network,$chan),32)) { msg $chan $nick $chan is not running the bingsearch script }
  41.       else {
  42.         Set %bingsearchChanList $remtok(%bingsearchChanList,$+($network,$chan),1,32)
  43.         msg $chan $nick has deactivated the bingsearch script for $chan .
  44.       }
  45.     }
  46.   }
  47.   elseif (!$timer($+(bingsearch,$network,$nick))) && ($istok(%bingsearchChanList,$+($network,$chan),32)) {
  48.     .timer $+ $+(bingsearch,$network,$nick) 1 6 noop
  49.     var %method $iif(%action == !,.notice $nick,$iif($regex($nick($chan,$nick).pnick,/(!|~|&|@|%|\+)/),msg $chan,.notice $nick))
  50.     Getbingsearch %method $2-
  51.   }
  52. }
  53. #bingsearch end
  54. alias bing { Getbingsearch echo -a $1- }
  55. On *:sockopen:bingsearch*: {
  56.   if (!$sockerr) {
  57.     sockwrite -nt $sockname GET $svar($sockname,get) HTTP/1.0
  58.     sockwrite -n $sockname Host: www.bing.com
  59.     sockwrite -n $sockname $crlf
  60.   }
  61.   else { echo -st Socket Error $nopath($script) | sockclose $sockname | return }
  62. }
  63. On *:sockread:bingsearch*: {
  64.   if ($sockerr) { echo -st Socket Error $nopath($script) | sockclose $sockname | return }
  65.   else {
  66.     sockread -fn &bing
  67.     if $bvar(&bing, 0) {
  68.       bwrite $+($sockname,.dat) -1 -1 &bing
  69.       if ($bfind(&bing, 1, </html>)) {
  70.         bread $+($sockname,.dat) 1 $file($+($sockname,.dat)).size &bing
  71.         .remove $+($sockname,.dat)
  72.         var %count 1
  73.         while ($bintween(&bing, "sb_tlst"><h3><a href=, </a></h3>, %count)) {
  74.           noop $regex(result,$v1,/"(.*?)".*">(.*)/i)
  75.           put $svar($sockname,output) $svar($sockname,logo) $replace($+($svar($sockname,textcolor),$Xchr($regml(result,2))) $&
  76.             $+($chr(15),$svar($sockname,linkcolor),$regml(result,1)),<strong>,$chr(2),</strong>,$chr(2))
  77.           if (%count == $svar($sockname,maxresults)) return
  78.           inc %count
  79.         }
  80.       }
  81.     }
  82.   }
  83. }
  84. alias -l urlencode return $regsubex($1-,/([^a-z0-9])/ig,% $+ $base($asc(\t),10,16,2))
  85. alias -l Svar {
  86.   var %sockname $1, %item $2
  87.   if ($isid) {
  88.     if ($regex($sock(%sockname).mark,/ $+ %item $+ \x01([^\x01]*)/i)) return $regml(1)
  89.   }
  90.   elseif ($3)  {
  91.     var %value $3-
  92.     if (!$regex($sock(%sockname).mark,/ $+ %item $+ \x01/i)) { sockmark %sockname $+($sock(%sockname).mark,$chr(1),%item,$chr(1),%value) }
  93.     else { sockmark %sockname $regsubex($sock(%sockname).mark,/( $+ %item $+ \x01[^\x01]*)/i,$+(%item,$chr(1),%value)) }
  94.   }
  95. }
  96. alias -l Xchr {
  97.   var %return $regsubex($regsubex($1-,/&#x([A-F0-9]{1,2});/g,$chr($base($regml(\n),16,10))),/&#([0-9]{2});/g,$chr(\1))
  98.   return $replacecs(%return,&ndash;,–,&middot;,·,&raquo;,»,&laquo;,«,&Uuml;,Ü,&uuml;,ü,&Aacute;,Á,&aacute;,á,&Eacute;,$&
  99.     É,&eacute;,é,&Iacute;,Í,&iacute;,í,&Oacute;,Ó,&oacute;,ó,&Ntilde;,Ñ,&ntilde;,ñ,&Uacute;,Ú,&uacute;,ú,&nbsp;,$chr(32),$&
  100.     &aelig;,æ,&quot;,",&lt;,<,&gt;,>, &amp;,&)
  101. }
  102. alias -l Put {
  103.   if (!$regex($1,/(\.|^)(msg|notice|echo)$/Si)) || (!$3) { echo -st **Put error** Syntax /Put msg #channel text - or - /Put notice nickname text  | return }
  104.   tokenize 32 $regsubex($1-,/([$\|%\[\]][^\s]*)/g,$+($chr(2),$chr(2),\t))
  105.   var %tokens $0, %Tstart 3, %Dtimer 1500
  106.   if ($timer($+(Put,$2,$network)).secs) { %Dtimer = $calc($v1 * 1000) }  
  107.   while ($len($($+($,%Tstart,-,%tokens),2)) > 430) {
  108.     dec %tokens
  109.     if ($len($($+($,%Tstart,-,%tokens),2)) <= 430) {
  110.       .timer -m 1 %Dtimer $1-2 $($+($,%Tstart,-,%tokens),2))
  111.       inc %Dtimer 1500
  112.       %Tstart = $calc(%tokens + 1)
  113.       %tokens = $0
  114.     }
  115.   }
  116.   .timer -m 1 %Dtimer $1-2 $($+($,%Tstart,-,%tokens),2))
  117.   .timer $+ $+(Put,$2,$network) -m 1 $calc(%Dtimer + 1500) noop
  118. }
  119. alias -l bintween {
  120.   var %count = 1, %mark = 0, %mark2 = 0
  121.   while (%count <= $4) {
  122.     if ($bfind($1, %mark2, $2).text) {
  123.       %mark = $calc($bfind($1, %mark2, $2).text + $len($2))
  124.       if ($bfind($1, %mark, $3).text) {
  125.         %mark2 = $bfind($1, %mark, $3).text
  126.       }
  127.       else { return 0 }
  128.     }
  129.     else { return 0 }
  130.     inc %count
  131.   }
  132.   return $bvar($1, $iif(%mark > 0,%mark,1), $iif($calc(%mark2 - %mark) < 4130,$calc(%mark2 - %mark),4130)).text
  133. }
  134. ;;Input edit
  135. On *:input:#: {
  136.   if ($regex($1-,/^(\+|-|!|@)bing.*/Si)) {
  137.     var %action $regml(1)
  138.     var %method $iif(%action == !,.notice $me,msg $chan)
  139.     Getbingsearch %method $2-
  140.   }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement