Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> Python

पायथन का उपयोग करके साधारण चैट रूम

इस लेख में हम देखेंगे कि पायथन के साथ सॉकेट प्रोग्रामिंग का उपयोग करके सर्वर और क्लाइंट चैट रूम सिस्टम कैसे बनाया जाता है।

सॉकेट किसी भी संचार चैनल के समापन बिंदु हैं। इनका उपयोग सर्वर और क्लाइंट को जोड़ने के लिए किया जाता है। सॉकेट द्वि-दिशात्मक हैं। इस क्षेत्र में, हम प्रत्येक छोर के लिए सॉकेट स्थापित करेंगे और सर्वर के माध्यम से विभिन्न ग्राहकों के बीच चैटरूम सिस्टम स्थापित करेंगे। क्लाइंट सॉकेट से कनेक्ट करने के लिए सर्वर साइड में कुछ पोर्ट होते हैं। जब कोई क्लाइंट उसी पोर्ट से कनेक्ट करने का प्रयास करता है, तो चैट रूम के लिए कनेक्शन स्थापित हो जाएगा।

मूल रूप से दो भाग होते हैं। सर्वर साइड और क्लाइंट साइड। जब सर्वर साइड स्क्रिप्ट चल रही होती है, तो यह किसी भी सक्रिय कनेक्शन अनुरोध की प्रतीक्षा करती है। जब एक कनेक्शन स्थापित हो जाता है, तो वह इसके साथ संचार कर सकता है।

इस मामले में हम लोकलहोस्ट का उपयोग कर रहे हैं। यदि मशीनें लैन के माध्यम से जुड़ी हुई हैं, तो हम संचार के लिए आईपी पते का उपयोग कर सकते हैं। सर्वर अपना आईपी प्रदर्शित करेगा, और सर्वर के लिए एक नाम पूछेगा। क्लाइंट की ओर से, हमें एक नाम और कनेक्ट करने के लिए सर्वर के आईपी पते का उल्लेख करना होगा।

सर्वर साइड कोड

import time, socket, sys
print('Setup Server...')
time.sleep(1)
#Get the hostname, IP Address from socket and set Port
soc = socket.socket()
host_name = socket.gethostname()
ip = socket.gethostbyname(host_name)
port = 1234
soc.bind((host_name, port))
print(host_name, '({})'.format(ip))
name = input('Enter name: ')
soc.listen(1) #Try to locate using socket
print('Waiting for incoming connections...')
connection, addr = soc.accept()
print("Received connection from ", addr[0], "(", addr[1], ")\n")
print('Connection Established. Connected From: {}, ({})'.format(addr[0], addr[0]))
#get a connection from client side
client_name = connection.recv(1024)
client_name = client_name.decode()
print(client_name + ' has connected.')
print('Press [bye] to leave the chat room')
connection.send(name.encode())
whileTrue:
message = input('Me > ')
if message == '[bye]':
message = 'Good Night...'
connection.send(message.encode())
print("\n")
break
connection.send(message.encode())
message = connection.recv(1024)
message = message.decode()
print(client_name, '>', message)

क्लाइंट साइड कोड

import time, socket, sys
print('Client Server...')
time.sleep(1)
#Get the hostname, IP Address from socket and set Port
soc = socket.socket()
shost = socket.gethostname()
ip = socket.gethostbyname(shost)
#get information to connect with the server
print(shost, '({})'.format(ip))
server_host = input('Enter server\'s IP address:')
name = input('Enter Client\'s name: ')
port = 1234
print('Trying to connect to the server: {}, ({})'.format(server_host, port))
time.sleep(1)
soc.connect((server_host, port))
print("Connected...\n")
soc.send(name.encode())
server_name = soc.recv(1024)
server_name = server_name.decode()
print('{} has joined...'.format(server_name))
print('Enter [bye] to exit.')
whileTrue:
message = soc.recv(1024)
message = message.decode()
print(server_name, ">", message)
message = input(str("Me > "))
if message == "[bye]":
message = "Leaving the Chat room"
soc.send(message.encode())
print("\n")
break
soc.send(message.encode())

  1. व्हाट्सएप पायथन का उपयोग कर रहा है?

    इस खंड में हम एक व्हाट्सएप चैटबॉट बनाने जा रहे हैं, लेकिन ट्विटर या फेसबुक के लिए कुछ अन्य चैटबॉट्स के विपरीत, व्हाट्सएप चैटबॉट व्हाट्सएप की नीतियों के कारण सीधे प्लेटफॉर्म पर नहीं चलते हैं। लेकिन प्राप्त करने का एक तरीका है, सेलेनियम का उपयोग करके, अजगर में एक बहुत ही स्मार्ट पैकेज जिसके साथ डेवलप

  1. पायथन टिंकर का उपयोग करके सरल पंजीकरण फॉर्म

    Tkinter GUI (ग्राफिकल यूजर इंटरफेस) विकसित करने के लिए एक अजगर पुस्तकालय है। हम विंडोज़ और अन्य सभी ग्राफिकल यूजर इंटरफेस बनाने के लिए यूआई (यूजर इंटरफेस) का एक एप्लीकेशन बनाने के लिए टिंकर लाइब्रेरी का उपयोग करते हैं। यदि आप अजगर 3.x (जो अनुशंसित है) का उपयोग कर रहे हैं, तो टिंकर एक मानक पैकेज के

  1. पायथन में CX_Freeze का उपयोग करना

    कभी-कभी हमें कुछ अलग बनाने का मन करता है जो बहुत ही रोमांचक होता है, और मानव स्वभाव के अनुसार, हम हमेशा इसे साझा करना पसंद करते हैं। पायथन भी उन इच्छाओं को पूरा करता है। पायथन का उपयोग करते हुए, यदि हम अपने पायथन प्रोग्राम को अपने दोस्तों के साथ साझा करना चाहते हैं, तो हम ऐसा कर सकते हैं, केवल उन स