egghelp.org community Forum Index
[ egghelp.org home | forum home ]
egghelp.org community
Discussion of eggdrop bots, shell accounts and tcl scripts.
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Murf's Google.tcl

 
Post new topic   Reply to topic    egghelp.org community Forum Index -> Script Support & Releases
View previous topic :: View next topic  
Author Message
ComputerTech
Master


Joined: 22 Feb 2020
Posts: 374

PostPosted: Mon Mar 08, 2021 10:36 pm    Post subject: Murf's Google.tcl Reply with quote

Now tbh, i have 0% knowledge of web retrieving, but i am trying this Script, and even added a putlog to it, but i get no results, any help is much appreciated Very Happy

As far as i currently see, the URL format seem's correct, but i am not 100% sure. Rolling Eyes

Code:

#######################################################################
#######################################################################
#                        Google by Murf                               #
#                            v1.0                                     #
#                                                                     #
#  Gets search results from Google.com. Nothing fancy yet, just gets  #
#  however many returns you want.  Idea is based on a script by       #
#  aNa|0Gue, although the code is all new.                            #
#                                                                     #
#                 Latest version @ http://www.blueday.org             #
#                 Comments & Questions to murf@mindless.com           #
#######################################################################
#  Only tested on TCL v8.3 and Egg v1.6x, although I kept the code    #
#  generic enough for TCL v8.0 and probably v1.3 of egg.              #
#######################################################################
#                                                                     #
#  Commands                                                           #
#                                                                     #
#          .google keyword(s) <# of results>                          #
#                                                                     #
#          e.g. .google murf 5                                        #
#                                                                     #
#   Version                                                           #
#      v1.0 Aug 16 2002                                               #
#         -- first version                                            #
#                                                                     #
#        Contact murf@mindless.com for bugs/comments                  #
#        This and other scripts available @ www.blueday.org           #
#######################################################################
#######################################################################

## default number of returns

set google_def_num 4

## max number of returns

set google_max 10

## public bind

set glpubbind .google

set gl_output "NOTICE $nick"
##########binds######################
bind pub -|- $glpubbind pub_google

##########Procs######################

proc pub_google {nick uhost handle chan search} {
  global gl_ouput
  set gl_output "NOTICE $nick"
  if {[llength $search] == 0} {
     puthelp "$gl_output : Whatcha searchin for fool!?"
     return 0
  }
  set url [google_url $search $nick $chan]
  google_getpage $url
  return 0
}

## Google_url #############################################

## Takes input and parses to set the url, returns the url

proc google_url {search nick chan} {
  global google_def_num google_max gl_output
  set google_num [lindex $search end]
  if {[regexp { [0-9]+} $search match $google_num]} {
     if {$google_num > $google_max} { set google_num $google_max }
     set search [lrange $search 0 [expr {[llength $search] - 2}]]
  } else {
     set google_num $google_def_num
  }
  if {$google_num >= 5} {
     set gl_output "NOTICE $nick"
  } else {
     set gl_output "PRIVMSG $chan"
  }
  regsub -all { } $search {+} search
  set url "/search?hl=en&num=$google_num&lr=&ie=ISO-8859-1&q=$search"
  return $url
}

## google_getpage ##########################################

## gets the webpage and parses for the returns

proc google_getpage {url} {
   global gl_output
## Open socket

   if {[catch {set glsock [socket -async www.google.com 80]} sockerr]} {
      puthelp "NOTICE $nick :$sockerr"
      puthelp "NOTICE $nick :Try again later, look out the window till then!"
      close $glsock
      return 0
   }
   puts $glsock "GET $url"
   flush $glsock
   set i 0
   set j 1
  set glout [gets $glsock]
  while {[regexp {Dissatisfied with your results?} $glout] == 0} {
     set glout [gets $glsock]   
     incr i
     if {$i >= 150} {
        break
     }
     if {[regexp {#008000>(.*?) - } $glout match gl_result($j)]} {
        #puthelp "$gl_output :$j. http://$gl_result($j)"
        putlog "http://$gl_result($j)"
        incr j
     }
  }
  close $glsock
  return 0
}

putlog "Google v1.0 by murf loaded"

_________________
ComputerTech
Back to top
View user's profile Send private message Send e-mail Visit poster's website
Display posts from previous:   
Post new topic   Reply to topic    egghelp.org community Forum Index -> Script Support & Releases All times are GMT - 4 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Forum hosting provided by Reverse.net

Powered by phpBB © 2001, 2005 phpBB Group
subGreen style by ktauber