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

Python का उपयोग करके सिंपल चैट रूम

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

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

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

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

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

import time, socket, sys
print('Setup Server...')
time.sleep(1)
# सॉकेट से होस्टनाम, IP एड्रेस प्राप्त करें और पोर्ट सेट करें
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)
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]))
# क्लाइंट साइड से कनेक्शन प्राप्त करें
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())
while True:
    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)
# सॉकेट से होस्टनाम, IP एड्रेस प्राप्त करें और पोर्ट सेट करें
soc = socket.socket()
shost = socket.gethostname()
ip = socket.gethostbyname(shost)
# सर्वर से कनेक्ट करने के लिए जानकारी प्राप्त करें
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.')
while True:
    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. Python Tkinter का उपयोग करके सरल रजिस्ट्रेशन फॉर्म Python Tkinter का उपयोग करके सरल रजिस्ट्रेशन फॉर्म

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

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

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