error en python

Iniciado por 0xDani, 12 Mayo 2012, 19:40 PM

0 Miembros y 1 Visitante están viendo este tema.

0xDani

Hola.
Veran, estoy  tratando de hacer un chat muy, muy básico, ya que es la primera vez que hago algo asi.
El problema es que al querer crear un socket se crea una captura de panttalla de la terminal.
Les dejo el código:

#!usr/bin/env python
try:
import socket
contacto=raw_input("""Introduce el nombre del contacto""")
print """Durante la conversacion, escribe salir  para  cerrar el chat"""
while true:
  sersoc=socket.socket()
  sersoc.bind((contacto,9998))
  sersoc.listen(1)
  clisoc, (host_c, puerto_c)=sersoc.accept()
  mensajerec=sersoc.recv(2048)
  mensajeen=raw_input('escribe tu mensaje:')
  false if mensajeen==salir
  sersoc.send(mensajeen)
  print mensajerec
except:
print """Se ha producido un error y no se xk es, no me  he estudiado los
tipos de excepciones, abre y cierra el chat"""
raw_input('pulsa enter para salir')

y otro programa similar.
Saludos y gracias de antemano.

PD:Uso Ubuntu 12.04
I keep searching for something that I never seem to find, but maybe I won't, because I left it all behind!

I code for $$$
Hago trabajos en C/C++
Contactar por PM

Runex

#1
Ese false if, me suena muy mal :S, prueba con esto a ver:

Código (python) [Seleccionar]
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import socket

contacto=raw_input("""Introduce el nombre del contacto""")
print """Durante la conversacion, escribe salir  para  cerrar el chat"""
x = True
while x:
sersoc=socket.socket()
sersoc.bind((contacto,9999))
sersoc.listen(1)
clisoc, (host_c, puerto_c)=sersoc.accept()
mensajerec=sersoc.recv(2048)
mensajeen=raw_input('escribe tu mensaje:')
if mensajeen == "salir":
x = False
sersoc.send(mensajeen)
print mensajerec


De todas formas no puedes hacer un chat únicamente con un archivo, deberás crear uno para el servidor y otro para el cliente, leete ésto:

http://mundogeek.net/archivos/2008/04/12/sockets-en-python/
"No renunciaría al bambú.
Nunca renuciaría a ti.
No te compares con otros" "El me dijo:
El bambú tenía un propósito diferente al del
helecho, sin embargo eran necesarios y
hacían del bosque un lugar hermoso".

0xDani

Bueno, con tu metodo va mejor, pero sigue sin funcionar.Me dice:
Citar
Traceback (most recent call last):
  File "/home/yo/Escritorio/chatrunex", line 11, in <module>
    sersoc.bind((contacto,9999))
  File "/usr/lib/python2.7/socket.py", line 224, in meth
    return getattr(self._sock,name)(*args)
socket.gaierror: [Errno -5] No address associated with hostname
Gracias de todas formas ;D
I keep searching for something that I never seem to find, but maybe I won't, because I left it all behind!

I code for $$$
Hago trabajos en C/C++
Contactar por PM

Runex

Cita de: daniyo en 12 Mayo 2012, 21:01 PM
Bueno, con tu metodo va mejor, pero sigue sin funcionar.Me dice:Gracias de todas formas ;D

¿Qué hostname estás usando? yo lo probé con Localhost y funcionaba :), pero no llegaba a la petición de escribe tu mensaje, no sé porqué :S.

Un saludo :)
"No renunciaría al bambú.
Nunca renuciaría a ti.
No te compares con otros" "El me dijo:
El bambú tenía un propósito diferente al del
helecho, sin embargo eran necesarios y
hacían del bosque un lugar hermoso".