SlideShare ist ein Scribd-Unternehmen logo
1 von 22
"AÑO DE LAS CUMBRES MUNDIALES EN EL PERU" INSTITUTO SUPERIOR TECNOLOGICO PUBLICO MANUEL NUÑEZ BUTRON TALLER DE APLICACIONES MOVILES TEMA SOCKETS EN PYTHON DOCENTE VICTOR PANDO BELTRAN ALUMNOS: MAMANI MAMANI SALVADOR BRUNO HUALLPA MAMANI LENIN LADISLAO MAMANI ROJAS HECTOR AÑO 2008
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
¿Que es un socket? lo más importante es saber que un socket nos permite comunicarnos con otras computadoras, de esa manera la informacón puede viajar libremente por todos lados. Mucha gente se aterroriza al enterarse que tiene que desarrollar alguna aplicación haciendo uso de sockets, pues el dia de hoy descubriremos que no es nada del otro mundo, este manual se enfoca solamente a sockets en Python, si alguna vez han trabajado con sockets en C se darán cuenta que en Python es mucho más fácil (que no lo es??),
bueno, los puntos que trataremos en este proyecto son: ,[object Object],[object Object],[object Object],[object Object]
Primero que nada... Existen tres dominios de comunicación para un socket: a) El dominio de UNIX. (AF_UNIX)  b) El dominio de internet. (AF_INET)  c) El dominio NS.
El dominio de UNIX. (AF_UNIX)           Se utiliza para la comunicacón entre procesos del sistema. El dominio de internet. (AF_INET)           Se utiliza en procesos que se estan comunicando atravéz de TCP(UDP)/IP El dominio NS.           Se utilizaba sobre los procesos que se comunicaban sobre el protocolo de comunicación de Xerox.
Rapido vistazo a algunos elementos de los sockets en Python. Socket Descripcion socket Crea un socket del tipo y familia especificada. socket.accept Acepta nuevas conexiones. socket.connect Conecta el socket a la dirección dada en el puerto dado. socket.send Envia datos al socket especificado. socket.recv Recive información.
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
[object Object],[object Object],[object Object],[object Object]
Veremos cómo crear un programa cliente y servidor a modo de ejemplo. Lo primero que tenemos que hacer es crear un objeto  socket para el servidor socket_s = socket.socket() Tenemos ahora que indicar en qué puerto se va a mantener a la escucha nuestro servidor utilizando el método bind. Para sockets IP, como es nuestro caso, el argumento de bind es una tupla que contiene el host y el puerto. El host se puede dejar vacío, indicando al método que puede utilizar cualquier nombre que esté disponible. socket_s.bind((“localhost”, 9999))
El método accept se mantiene a la espera de conexiones entrantes, bloqueando la ejecución hasta que llega un mensaje. Cuando llega un mensaje, accept desbloquea la ejecución, devolviendo un objeto socket que representa la conexión del cliente y una tupla que contiene el host y puerto de dicha conexión. socket_s.listen(10) socket_c, (host_c, puerto_c) = socket_s.accept()
Una vez que tenemos este objeto socket podemos comunicarnos con el cliente a través suyo, mediante los métodos recv y send (o recvfrom y sendfrom en UDP) que permiten recibir o enviar mensajes respectivamente. El método send toma como parámetros los datos a enviar, mientras que el método recv toma como parámetro el número máximo de bytes a aceptar. recibido = socket_c.recv(1024) print “Recibido: “, recibio socket_c.send(recibido)
Una vez que hemos terminado de trabajar con el socket, lo cerramos con el método close. Crear un cliente es aún más sencillo. Solo tenemos que crear el objeto socket, utilizar el método connect para conectarnos al servidor y utilizar los métodos send y recv que vimos anteriormente. El argumento de connect es una tupla con host y puerto, exactamente igual que bind. socket_c = socket.socket() socket_c.connect((“localhost”, 9999)) socket_c.send(“hola”)
DIAGRAMA PARA  EL SERVIDOR Inicio Leer MR MR<=1024 MR=”salir” “ Adiós” “ Recibido:”,M Fin MR = Mensaje Recibido SI SI NO NO
DIAGRAMA PARA  EL CLIENTE Inicio Leer M M=”salir” “ Adiós” Fin ENVIAR M SI NO M = mensaje escrito por teclado
Este sería el código del script servidor: import socket s = socket.socket() s.bind(('localhost', 8888)) s.listen(1) sc, addr = s.accept() while True: recibido = sc.recv(1024) if recibido == ‘salir': break print 'Recibido:', recibido sc.send(recibido) print 'adios' sc.close() s.close()
Y a continuación tenemos el del script cliente: import socket s = socket.socket() s.connect(('localhost', 9999)) while True: mensaje = raw_input('> ') s.send(mensaje) if mensaje == ‘salir': break print 'adios' s.close()
 
Hemos aprendido a comunicarse con un servidor de un cliente usando sockets en Python. Asi es como trabajan los sockets, y hay un sin fin de maneras de como trabajar con ellos  Un popular ejemplo, En una típica aplicación de chat, cada cliente es un servidor también, y cada servidor es un cliente así, es decir, los clientes deben ser capaces de escuchar y servidores deben ser capaces de transmitir datos. Conclusión
Nuestra recomendación seria que al realizar cualquier proyecto traten de entender bien el problema par así poder darle una buena solución Y cualquier información por pequeña q parezca es buena Recomendación
BIBLIOGRAFIA http :// elnanni.googlepages.com / index_sock.html http :// mundogeek.net /archivos/2008/04/12/ sockets -en- python / http :// launchpadlibrarian.net /18980633/ Python%20para%20todos.pdf http :// victorpando.blogspot.com /2008_12_01_ archive.html
 

Weitere ähnliche Inhalte

Was ist angesagt?

Configurar servidor sql puerto 1433 y el oracle 1521 y sqlite administracion...
Configurar servidor sql puerto 1433 y el oracle  1521 y sqlite administracion...Configurar servidor sql puerto 1433 y el oracle  1521 y sqlite administracion...
Configurar servidor sql puerto 1433 y el oracle 1521 y sqlite administracion...Home
 
Onion protocol
Onion protocolOnion protocol
Onion protocolAnshu Raj
 
Time based CAPTCHA protected SQL injection through SOAP-webservice
Time based CAPTCHA protected SQL injection through SOAP-webserviceTime based CAPTCHA protected SQL injection through SOAP-webservice
Time based CAPTCHA protected SQL injection through SOAP-webserviceFrans Rosén
 
Tor the onion router
Tor  the onion routerTor  the onion router
Tor the onion routerAshly Liza
 
1 introduction to windows server 2016
1  introduction to windows server 20161  introduction to windows server 2016
1 introduction to windows server 2016Hameda Hurmat
 
Desfragmentador de disco duro
Desfragmentador de disco duroDesfragmentador de disco duro
Desfragmentador de disco durotechnologyjba
 
Linux security introduction
Linux security introduction Linux security introduction
Linux security introduction Mohamed Gad
 
Malware Analysis 101 - N00b to Ninja in 60 Minutes at BSidesLV on August 5, ...
Malware Analysis 101 -  N00b to Ninja in 60 Minutes at BSidesLV on August 5, ...Malware Analysis 101 -  N00b to Ninja in 60 Minutes at BSidesLV on August 5, ...
Malware Analysis 101 - N00b to Ninja in 60 Minutes at BSidesLV on August 5, ...grecsl
 

Was ist angesagt? (12)

Arp spoofing
Arp spoofingArp spoofing
Arp spoofing
 
Configurar servidor sql puerto 1433 y el oracle 1521 y sqlite administracion...
Configurar servidor sql puerto 1433 y el oracle  1521 y sqlite administracion...Configurar servidor sql puerto 1433 y el oracle  1521 y sqlite administracion...
Configurar servidor sql puerto 1433 y el oracle 1521 y sqlite administracion...
 
Onion protocol
Onion protocolOnion protocol
Onion protocol
 
Time based CAPTCHA protected SQL injection through SOAP-webservice
Time based CAPTCHA protected SQL injection through SOAP-webserviceTime based CAPTCHA protected SQL injection through SOAP-webservice
Time based CAPTCHA protected SQL injection through SOAP-webservice
 
Tipos de windows
Tipos de windows Tipos de windows
Tipos de windows
 
Tor the onion router
Tor  the onion routerTor  the onion router
Tor the onion router
 
File inclusion
File inclusionFile inclusion
File inclusion
 
Nmap tutorial
Nmap tutorialNmap tutorial
Nmap tutorial
 
1 introduction to windows server 2016
1  introduction to windows server 20161  introduction to windows server 2016
1 introduction to windows server 2016
 
Desfragmentador de disco duro
Desfragmentador de disco duroDesfragmentador de disco duro
Desfragmentador de disco duro
 
Linux security introduction
Linux security introduction Linux security introduction
Linux security introduction
 
Malware Analysis 101 - N00b to Ninja in 60 Minutes at BSidesLV on August 5, ...
Malware Analysis 101 -  N00b to Ninja in 60 Minutes at BSidesLV on August 5, ...Malware Analysis 101 -  N00b to Ninja in 60 Minutes at BSidesLV on August 5, ...
Malware Analysis 101 - N00b to Ninja in 60 Minutes at BSidesLV on August 5, ...
 

Ähnlich wie Proyecto Python

Sockets En Python Por Antoni Luque Delgado
Sockets En Python Por Antoni Luque DelgadoSockets En Python Por Antoni Luque Delgado
Sockets En Python Por Antoni Luque Delgadomephistodark
 
Sockets En Python Por Antoni Luque Delgado
Sockets En Python Por Antoni Luque DelgadoSockets En Python Por Antoni Luque Delgado
Sockets En Python Por Antoni Luque Delgadoguest29f06ee
 
C documents and settings_pc10_configuración local_datos de programa_mozilla_...
C  documents and settings_pc10_configuración local_datos de programa_mozilla_...C  documents and settings_pc10_configuración local_datos de programa_mozilla_...
C documents and settings_pc10_configuración local_datos de programa_mozilla_...ORLANDO LOPEZ
 
Sockets en delphi
Sockets en delphiSockets en delphi
Sockets en delphijairoj2012
 
Sockets en c
Sockets en cSockets en c
Sockets en cMaShYy
 
Programacionclienteservidor
ProgramacionclienteservidorProgramacionclienteservidor
Programacionclienteservidorwilmercampos4
 
Desarrollo aplicaciones distribuidas sockets
Desarrollo aplicaciones distribuidas socketsDesarrollo aplicaciones distribuidas sockets
Desarrollo aplicaciones distribuidas socketsdandark2000
 
Taller Sockets TCP UDP Multicast
Taller Sockets TCP UDP MulticastTaller Sockets TCP UDP Multicast
Taller Sockets TCP UDP MulticastHector L
 
Tema iv comunicación entre procesos
Tema iv comunicación entre procesosTema iv comunicación entre procesos
Tema iv comunicación entre procesosPablo Hurtado
 
Ejemplos programacion socket java
Ejemplos programacion socket javaEjemplos programacion socket java
Ejemplos programacion socket javaOscar Damian
 
Capa de Transporte - Redes de Computadoras
Capa de Transporte - Redes de ComputadorasCapa de Transporte - Redes de Computadoras
Capa de Transporte - Redes de ComputadorasJesus Jimenez
 
Instalacion servicio e-mail Linux Mint
Instalacion servicio e-mail Linux MintInstalacion servicio e-mail Linux Mint
Instalacion servicio e-mail Linux MintGer Hernandez
 
Sistemas operativos distribuidos ii
Sistemas operativos distribuidos iiSistemas operativos distribuidos ii
Sistemas operativos distribuidos iiMiguel Hernandez
 

Ähnlich wie Proyecto Python (20)

Sockets En Python Por Antoni Luque Delgado
Sockets En Python Por Antoni Luque DelgadoSockets En Python Por Antoni Luque Delgado
Sockets En Python Por Antoni Luque Delgado
 
Sockets En Python Por Antoni Luque Delgado
Sockets En Python Por Antoni Luque DelgadoSockets En Python Por Antoni Luque Delgado
Sockets En Python Por Antoni Luque Delgado
 
C documents and settings_pc10_configuración local_datos de programa_mozilla_...
C  documents and settings_pc10_configuración local_datos de programa_mozilla_...C  documents and settings_pc10_configuración local_datos de programa_mozilla_...
C documents and settings_pc10_configuración local_datos de programa_mozilla_...
 
Sockets en delphi
Sockets en delphiSockets en delphi
Sockets en delphi
 
Sockets en c
Sockets en cSockets en c
Sockets en c
 
Programacionclienteservidor
ProgramacionclienteservidorProgramacionclienteservidor
Programacionclienteservidor
 
Desarrollo aplicaciones distribuidas sockets
Desarrollo aplicaciones distribuidas socketsDesarrollo aplicaciones distribuidas sockets
Desarrollo aplicaciones distribuidas sockets
 
Sockets tcp
Sockets tcpSockets tcp
Sockets tcp
 
El servidor
El servidorEl servidor
El servidor
 
Socket
SocketSocket
Socket
 
Taller Sockets TCP UDP Multicast
Taller Sockets TCP UDP MulticastTaller Sockets TCP UDP Multicast
Taller Sockets TCP UDP Multicast
 
presenjava.ppt
presenjava.pptpresenjava.ppt
presenjava.ppt
 
Tema iv comunicación entre procesos
Tema iv comunicación entre procesosTema iv comunicación entre procesos
Tema iv comunicación entre procesos
 
Sockets/ tcp
Sockets/ tcpSockets/ tcp
Sockets/ tcp
 
Ejemplos programacion socket java
Ejemplos programacion socket javaEjemplos programacion socket java
Ejemplos programacion socket java
 
Networking
NetworkingNetworking
Networking
 
Capa de Transporte - Redes de Computadoras
Capa de Transporte - Redes de ComputadorasCapa de Transporte - Redes de Computadoras
Capa de Transporte - Redes de Computadoras
 
Instalacion servicio e-mail Linux Mint
Instalacion servicio e-mail Linux MintInstalacion servicio e-mail Linux Mint
Instalacion servicio e-mail Linux Mint
 
Sistemas operativos distribuidos ii
Sistemas operativos distribuidos iiSistemas operativos distribuidos ii
Sistemas operativos distribuidos ii
 
Sockets
SocketsSockets
Sockets
 

Kürzlich hochgeladen

Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESOPrueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESOluismii249
 
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICABIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICAÁngel Encinas
 
Tema 17. Biología de los microorganismos 2024
Tema 17. Biología de los microorganismos 2024Tema 17. Biología de los microorganismos 2024
Tema 17. Biología de los microorganismos 2024IES Vicent Andres Estelles
 
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docxPLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docxiemerc2024
 
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).pptPINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).pptAlberto Rubio
 
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptxSEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptxYadi Campos
 
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docxEliaHernndez7
 
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLA
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLAACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLA
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLAJAVIER SOLIS NOYOLA
 
Infografía EE con pie del 2023 (3)-1.pdf
Infografía EE con pie del 2023 (3)-1.pdfInfografía EE con pie del 2023 (3)-1.pdf
Infografía EE con pie del 2023 (3)-1.pdfAlfaresbilingual
 
LA LITERATURA DEL BARROCO 2023-2024pptx.pptx
LA LITERATURA DEL BARROCO 2023-2024pptx.pptxLA LITERATURA DEL BARROCO 2023-2024pptx.pptx
LA LITERATURA DEL BARROCO 2023-2024pptx.pptxlclcarmen
 
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.Alejandrino Halire Ccahuana
 
5.- Doerr-Mide-lo-que-importa-DESARROLLO PERSONAL
5.- Doerr-Mide-lo-que-importa-DESARROLLO PERSONAL5.- Doerr-Mide-lo-que-importa-DESARROLLO PERSONAL
5.- Doerr-Mide-lo-que-importa-DESARROLLO PERSONALMiNeyi1
 
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...JAVIER SOLIS NOYOLA
 
SESION DE PERSONAL SOCIAL. La convivencia en familia 22-04-24 -.doc
SESION DE PERSONAL SOCIAL.  La convivencia en familia 22-04-24  -.docSESION DE PERSONAL SOCIAL.  La convivencia en familia 22-04-24  -.doc
SESION DE PERSONAL SOCIAL. La convivencia en familia 22-04-24 -.docRodneyFrankCUADROSMI
 
Proyecto de aprendizaje dia de la madre MINT.pdf
Proyecto de aprendizaje dia de la madre MINT.pdfProyecto de aprendizaje dia de la madre MINT.pdf
Proyecto de aprendizaje dia de la madre MINT.pdfpatriciaines1993
 
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdfNUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdfUPTAIDELTACHIRA
 

Kürzlich hochgeladen (20)

Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESOPrueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESO
 
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICABIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
 
Tema 17. Biología de los microorganismos 2024
Tema 17. Biología de los microorganismos 2024Tema 17. Biología de los microorganismos 2024
Tema 17. Biología de los microorganismos 2024
 
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docxPLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
 
Tema 11. Dinámica de la hidrosfera 2024
Tema 11.  Dinámica de la hidrosfera 2024Tema 11.  Dinámica de la hidrosfera 2024
Tema 11. Dinámica de la hidrosfera 2024
 
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).pptPINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
 
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptxSEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
 
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
 
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLA
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLAACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLA
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLA
 
Interpretación de cortes geológicos 2024
Interpretación de cortes geológicos 2024Interpretación de cortes geológicos 2024
Interpretación de cortes geológicos 2024
 
Infografía EE con pie del 2023 (3)-1.pdf
Infografía EE con pie del 2023 (3)-1.pdfInfografía EE con pie del 2023 (3)-1.pdf
Infografía EE con pie del 2023 (3)-1.pdf
 
LA LITERATURA DEL BARROCO 2023-2024pptx.pptx
LA LITERATURA DEL BARROCO 2023-2024pptx.pptxLA LITERATURA DEL BARROCO 2023-2024pptx.pptx
LA LITERATURA DEL BARROCO 2023-2024pptx.pptx
 
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
 
5.- Doerr-Mide-lo-que-importa-DESARROLLO PERSONAL
5.- Doerr-Mide-lo-que-importa-DESARROLLO PERSONAL5.- Doerr-Mide-lo-que-importa-DESARROLLO PERSONAL
5.- Doerr-Mide-lo-que-importa-DESARROLLO PERSONAL
 
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...
 
Sesión de clase: Fe contra todo pronóstico
Sesión de clase: Fe contra todo pronósticoSesión de clase: Fe contra todo pronóstico
Sesión de clase: Fe contra todo pronóstico
 
SESION DE PERSONAL SOCIAL. La convivencia en familia 22-04-24 -.doc
SESION DE PERSONAL SOCIAL.  La convivencia en familia 22-04-24  -.docSESION DE PERSONAL SOCIAL.  La convivencia en familia 22-04-24  -.doc
SESION DE PERSONAL SOCIAL. La convivencia en familia 22-04-24 -.doc
 
Proyecto de aprendizaje dia de la madre MINT.pdf
Proyecto de aprendizaje dia de la madre MINT.pdfProyecto de aprendizaje dia de la madre MINT.pdf
Proyecto de aprendizaje dia de la madre MINT.pdf
 
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdfNUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
 
Power Point: Fe contra todo pronóstico.pptx
Power Point: Fe contra todo pronóstico.pptxPower Point: Fe contra todo pronóstico.pptx
Power Point: Fe contra todo pronóstico.pptx
 

Proyecto Python

  • 1. &quot;AÑO DE LAS CUMBRES MUNDIALES EN EL PERU&quot; INSTITUTO SUPERIOR TECNOLOGICO PUBLICO MANUEL NUÑEZ BUTRON TALLER DE APLICACIONES MOVILES TEMA SOCKETS EN PYTHON DOCENTE VICTOR PANDO BELTRAN ALUMNOS: MAMANI MAMANI SALVADOR BRUNO HUALLPA MAMANI LENIN LADISLAO MAMANI ROJAS HECTOR AÑO 2008
  • 2.
  • 3. ¿Que es un socket? lo más importante es saber que un socket nos permite comunicarnos con otras computadoras, de esa manera la informacón puede viajar libremente por todos lados. Mucha gente se aterroriza al enterarse que tiene que desarrollar alguna aplicación haciendo uso de sockets, pues el dia de hoy descubriremos que no es nada del otro mundo, este manual se enfoca solamente a sockets en Python, si alguna vez han trabajado con sockets en C se darán cuenta que en Python es mucho más fácil (que no lo es??),
  • 4.
  • 5. Primero que nada... Existen tres dominios de comunicación para un socket: a) El dominio de UNIX. (AF_UNIX) b) El dominio de internet. (AF_INET) c) El dominio NS.
  • 6. El dominio de UNIX. (AF_UNIX)          Se utiliza para la comunicacón entre procesos del sistema. El dominio de internet. (AF_INET)          Se utiliza en procesos que se estan comunicando atravéz de TCP(UDP)/IP El dominio NS.          Se utilizaba sobre los procesos que se comunicaban sobre el protocolo de comunicación de Xerox.
  • 7. Rapido vistazo a algunos elementos de los sockets en Python. Socket Descripcion socket Crea un socket del tipo y familia especificada. socket.accept Acepta nuevas conexiones. socket.connect Conecta el socket a la dirección dada en el puerto dado. socket.send Envia datos al socket especificado. socket.recv Recive información.
  • 8.
  • 9.
  • 10. Veremos cómo crear un programa cliente y servidor a modo de ejemplo. Lo primero que tenemos que hacer es crear un objeto socket para el servidor socket_s = socket.socket() Tenemos ahora que indicar en qué puerto se va a mantener a la escucha nuestro servidor utilizando el método bind. Para sockets IP, como es nuestro caso, el argumento de bind es una tupla que contiene el host y el puerto. El host se puede dejar vacío, indicando al método que puede utilizar cualquier nombre que esté disponible. socket_s.bind((“localhost”, 9999))
  • 11. El método accept se mantiene a la espera de conexiones entrantes, bloqueando la ejecución hasta que llega un mensaje. Cuando llega un mensaje, accept desbloquea la ejecución, devolviendo un objeto socket que representa la conexión del cliente y una tupla que contiene el host y puerto de dicha conexión. socket_s.listen(10) socket_c, (host_c, puerto_c) = socket_s.accept()
  • 12. Una vez que tenemos este objeto socket podemos comunicarnos con el cliente a través suyo, mediante los métodos recv y send (o recvfrom y sendfrom en UDP) que permiten recibir o enviar mensajes respectivamente. El método send toma como parámetros los datos a enviar, mientras que el método recv toma como parámetro el número máximo de bytes a aceptar. recibido = socket_c.recv(1024) print “Recibido: “, recibio socket_c.send(recibido)
  • 13. Una vez que hemos terminado de trabajar con el socket, lo cerramos con el método close. Crear un cliente es aún más sencillo. Solo tenemos que crear el objeto socket, utilizar el método connect para conectarnos al servidor y utilizar los métodos send y recv que vimos anteriormente. El argumento de connect es una tupla con host y puerto, exactamente igual que bind. socket_c = socket.socket() socket_c.connect((“localhost”, 9999)) socket_c.send(“hola”)
  • 14. DIAGRAMA PARA EL SERVIDOR Inicio Leer MR MR<=1024 MR=”salir” “ Adiós” “ Recibido:”,M Fin MR = Mensaje Recibido SI SI NO NO
  • 15. DIAGRAMA PARA EL CLIENTE Inicio Leer M M=”salir” “ Adiós” Fin ENVIAR M SI NO M = mensaje escrito por teclado
  • 16. Este sería el código del script servidor: import socket s = socket.socket() s.bind(('localhost', 8888)) s.listen(1) sc, addr = s.accept() while True: recibido = sc.recv(1024) if recibido == ‘salir': break print 'Recibido:', recibido sc.send(recibido) print 'adios' sc.close() s.close()
  • 17. Y a continuación tenemos el del script cliente: import socket s = socket.socket() s.connect(('localhost', 9999)) while True: mensaje = raw_input('> ') s.send(mensaje) if mensaje == ‘salir': break print 'adios' s.close()
  • 18.  
  • 19. Hemos aprendido a comunicarse con un servidor de un cliente usando sockets en Python. Asi es como trabajan los sockets, y hay un sin fin de maneras de como trabajar con ellos Un popular ejemplo, En una típica aplicación de chat, cada cliente es un servidor también, y cada servidor es un cliente así, es decir, los clientes deben ser capaces de escuchar y servidores deben ser capaces de transmitir datos. Conclusión
  • 20. Nuestra recomendación seria que al realizar cualquier proyecto traten de entender bien el problema par así poder darle una buena solución Y cualquier información por pequeña q parezca es buena Recomendación
  • 21. BIBLIOGRAFIA http :// elnanni.googlepages.com / index_sock.html http :// mundogeek.net /archivos/2008/04/12/ sockets -en- python / http :// launchpadlibrarian.net /18980633/ Python%20para%20todos.pdf http :// victorpando.blogspot.com /2008_12_01_ archive.html
  • 22.