Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/usr/bin/env python
- # coding: utf-8
- #
- # Script Python para enviar el mismo mensaje varias veces al chat de Ikariam.
- #
- # Para cambiar el mensaje, introducelo entre las comillas en la linea que empieza
- # por "TEXTO = ". Si no hay nada entre las comillas, se envia un mensaje vacio.
- #
- # NO ME HAGO RESPONSABLE DEL USO QUE HAGAS DE ESTE SCRIPT!
- # ES POSIBLE QUE INCUMPLAS ALGUNA REGLA DEL JUEGO AL USARLO.
- #
- #
- # DATOS:
- #
- # Direccion del mundo de Ikariam en el que juegas:
- SERVIDOR = "s14.es.ikariam.com"
- # Texto que enviar:
- TEXTO = ""
- # Numero de veces que enviarlo:
- NUMERO_MENSAJES = 400
- # PETICIONES
- LOGIN = "\
- GET /index.php?action=loginAvatar&function=login&uni_url=%s&name=%s&password=%s&kid= HTTP/1.1\r\n\
- Host: %s\r\n\
- \r\n\
- "
- MENSAJE = "\
- GET /index.php?action=ChatWindow&function=sendLine&chatline=%s HTTP/1.1\r\n\
- Host: %s\r\n\
- Cookie: %s\r\n\
- \r\n\
- "
- import socket, getpass, urllib
- print "----- Envios repetidos al chat de IKARIAM -----"
- print "Se va a enviar %s veces '%s'%s" % (NUMERO_MENSAJES, TEXTO, " (nada)" if not TEXTO else "")
- print
- print "A continuacion introduzca sus datos de acceso a Ikariam:"
- def pedir(mostrar, defecto):
- texto = raw_input(mostrar)
- if not texto: return defecto
- else: return texto
- usuario = raw_input("Usuario: ")
- clave = getpass.getpass("Clave: ")
- print "Puede cambiar algunos datos, pulse INTRO sin escribir nada para no cambiarlos"
- mensaje = pedir("Mensaje: ", TEXTO)
- veces = int(pedir("Numero de veces: ", NUMERO_MENSAJES))
- print
- try:
- # OBTENER IP
- print "Obteniendo IP..."
- ip = socket.gethostbyname(SERVIDOR)
- print "IP:", ip
- # LOGIN
- print "Conectando..."
- s = socket.socket()
- s.connect((ip, 80))
- print "Iniciando sesion..."
- s.send(LOGIN % (SERVIDOR, urllib.quote_plus(usuario), urllib.quote_plus(clave), SERVIDOR))
- f = s.makefile()
- print "Buscando cookie..."
- for l in f:
- if l.lower().startswith("set-cookie: ikariam="):
- cookie = l[l.find("ikariam="):l.find(";")] # ID_SESION
- print "Cookie:", cookie
- break
- else:
- raise Exception("Usuario o clave incorrectos?!")
- f.close()
- s.close()
- # ENVIO
- print "Enviando mensajes al chat..."
- for i in range(veces):
- s = socket.socket()
- s.connect((ip, 80))
- s.send(MENSAJE % (urllib.quote_plus(mensaje), SERVIDOR, cookie))
- s.close()
- print "Mensaje", i+1
- print "Finalizado! Vuelva a entrar a Ikariam con su navegador"
- except Exception, error:
- print "ERROR:", error
- raw_input("<< Pulsa INTRO para salir >>")
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement