def twitter_update( self, name, num = 5, interval = 60, tl = True, channel = "#pswg" ): time.sleep(interval) latest = None while True: output = tweets.stalk( name, num, latest ) if output: output.reverse() for s in output: text = s.text id = s.id self.server.notice(channel, "%s [Posted by %s %s.]" % ( text.encode("utf8"), name, s.relative_created_at )) if tl: self.server.notice(channel, ":: Engrish >> %s" % ( gtranslate._translate(text).encode("utf8") )) latest = id time.sleep(interval)
#!/usr/bin/env python2 import twitter import gtranslate api = twitter.Api() def stalk( name = "choroyama", num = 5, start = None): try: tweets = api.GetUserTimeline(screen_name=name, count=num, since_id=start) return tweets except Exception, e: print "Shit, something's wrong" print "-" * 40 print e return if __name__ == "__main__": tweets = stalk() for s in tweets: print "D-YAMA: %s [Posted %s.]" % (s.text, s.relative_created_at ) print ">> Engrish: %s" % ( gtranslate._translate(s.text) )
def callback(self, handle, arg): """Standard callback function. Defines default commands to be used by typing them into chat.""" host = arg.source() user = irclib.nm_to_n(host) args = arg.arguments()[0] chan = arg.target() for f****t in faggots: if re.search(f****t, host): return if "!help" in args: self.server.privmsg(user, self.help(user)) """ Useless faggotry elif "!checkem" in args: output = checkem.checkem( user ) if output: self.server.notice(user, output ) elif "!tlnote" in args: tlnote._open() tlnote._create() note = tlnote.tlnote() if note: self.server.notice(chan, note) tlnote._close() elif ".tlnote" in args: arguments = args.split(" ") if len(arguments) < 2: return note = " ".join( arguments[1:] ) tlnote._open() tlnote._create() tlnote.add( user, note ) self.server.privmsg( user, "Added: {}".format( note ) ) tlnote._close() """ elif "!thread" in args: if chan == "#infinite-stratos": thread = "http://boards.4chan.org/a/res/%s" % self.thread self.server.notice(chan, "Current thread: %s" % thread) elif re.search("^(!eightball|!8ball)", args): # To have the ^ wildcard working in regexp we need to strip args from ['] first. self.server.notice( user, eightball.eightball( user ) ) elif re.search( "^!loli", args): #Open db and create if needed loli.open() loli.create() #Execute command and return output output = loli.loli( user ) if output: self.server.notice(user, output ) #Close db loli.save() elif re.search( "^!steal", args): arguments = args.split(" ") #Only wrote !steal if len( arguments ) < 2: return; target = arguments[1] logging.debug("%s is attempting to steal lolis from %s" % ( user, target )) if user == target: return #Little protection for gangrape if target == self.steal_lastperson: return self.steal_lastperson = target """ if target in mods: #Because I can self.server.privmsg(chan, "NOPE.exe") return """ #Open db loli.open() loli.create() #Execute command and return output output = loli.steal( user, target ) if output: self.server.notice( "%s,%s" % (user, target), output ) #Close db loli.save() elif re.search( "^!top5", args): print args print user loli.open() loli.create() data = loli.top5() print data if data: _i = 1 for user in data: print user out = "%s. - %s with %s lolis" % ( _i, user[0], user[1], ) print out self.server.privmsg(chan, out) _i += 1 loli.save() elif re.search( "^!google", args ): arguments = args.split(" ") if len(arguments) < 2: return _query = arguments[1:] self.server.notice( user, google.search( user, " ".join( _query ) ) ) elif re.search( "^!moon", args ): arguments = args.split(" ") if len(arguments) < 2: return text = " ".join( arguments[1:] ) tl = gtranslate._translate( text.decode('utf8') ) self.server.notice( user, "%s, moon >> engrish :: %s" % ( user, tl.encode('utf8') ) ) elif re.search("^!gelbooru", args): arguments = args.split(" ") if len(arguments) < 2: return _query = arguments[1:] self.server.notice( user, gelbooru.open( " ".join( _query ) ) ) elif re.search( "^!timeleft", args ): if chan == "#infinite-stratos": self.server.privmsg(chan, timeleft.timeleft( user )) elif re.search("^POMF =3", args): #Stop spamming that shit if ( int(time.time()) - self.pomfdown ) > 5: self.server.privmsg(chan, "Wah!") self.pomfdown = int(time.time()) elif re.search("^Wah!", args): #Stop spamming that shit if ( int(time.time()) - self.pomfdown ) > 5: self.server.privmsg(chan, "What are we gonna do on the bed?") self.pomfdown = int(time.time()) elif re.search("^;_;", args): if ( int(time.time()) - self.baww ) > 5: self.server.privmsg(chan, ";_;") self.baww = int(time.time()) elif re.search("UNTZ", args): if ( int(time.time()) - self.untz ) > 5: self.server.privmsg(chan, "UNTZ UNTZ UNTZ UTNZ UTNZ UNTZ") self.untz = int(time.time()) # NOW I'VE LOST IT elif re.search("A NIGHT SKY FULL OF CRIES", args, re.IGNORECASE): self.server.privmsg(chan, "HEARTS FILLED WITH LIES") elif re.search("HEARTS FILLED WITH LIES", args, re.IGNORECASE): self.server.privmsg(chan, "THE CONTRACT, IS IT WORTH THE PRICE?") elif re.search("THE CONTRACT. IS IT WORTH THE PRICE.", args, re.IGNORECASE): self.server.privmsg(chan, "A SOUL PLEDGED TO THE DARKNESS") elif re.search("A SOUL PLEDGED TO THE DARKNESS", args, re.IGNORECASE): self.server.privmsg(chan, "NOW I'VE LOST IT") elif re.search("NOW I'VE LOST IT", args, re.IGNORECASE): self.server.privmsg(chan, "I KNOW I CAN KILL") elif re.search("I KNOW I CAN KILL", args, re.IGNORECASE): self.server.privmsg(chan, "THE TRUTH EXISTS BEYOND THE GATE") elif re.search("THE TRUTH (EXISTS|LIES|IS) BEYOND THE GATE", args, re.IGNORECASE): self.server.privmsg(chan, "*guitar riff*") elif re.search("(X|x|:|;|=)(P|D|\)|\(|\/|\\\)|((>|<|\*|O|o|\^)(\.*|_*|-*)(>|<|\*|O|o|\^))", args) and not self.gaia: if chan == "#madoka": #Derp return if not random.randint(0,4): #25% self.server.notice(user, "{}, gb2 >>>/gaia/".format(user)) elif re.search("^!gsearch", args): arguments = args.split(" ") if len(arguments) < 2: return _query = arguments[1:] self.server.notice( user, str(gelboorus.search( " ".join( _query ) ) ) ) else: mentioned = 0 public = self.public nickname = self.server.nickname output = chat.parse( user, args, nickname, public ) if output != None: self.server.privmsg( chan, output ) return