Chatroom Server em Python
Publicado por henrique (última atualização em 21/05/2022)
[ Hits: 2.443 ]
Homepage: naotem.com
Server do chat room em python
#!/bin/python3 import threading import socket from sys import argv red = "\033[1;31m" blue = "\033[1;34m" cyan = "\033[1;36m" green = "\033[0;32m" reset = "\033[0;0m" bold = "\033[;1m" reverse = "\033[;7m" white = "\033[37m" gray = "\033[0;37m" def usage(): print('-' * 90 + green + ''' █████████ █████ █████ █████████ ███████████ ███████████ █████ █████ ███░░░░░███░░███ ░░███ ███░░░░░███ ░█░░░███░░░█ ░░███░░░░░███░░███ ░░███ ███ ░░░ ░███ ░███ ░███ ░███ ░ ░███ ░ ░███ ░███ ░░███ ███ ░███ ░███████████ ░███████████ ░███ ░██████████ ░░█████ ░███ ░███░░░░░███ ░███░░░░░███ ░███ ░███░░░░░░ ░░███ ░░███ ███ ░███ ░███ ░███ ░███ ░███ ░███ ░███ ░░█████████ █████ █████ █████ █████ █████ ██ █████ █████ ░░░░░░░░░ ░░░░░ ░░░░░ ░░░░░ ░░░░░ ░░░░░ ░░ ░░░░░ ░░░░░ exemplo: ./chats.py <ip> <port> '''.title() + reset + '-' * 90) try: host = argv[1] port = int(argv[2]) except: usage() exit() server = socket.socket(socket.AF_INET, socket.SOCK_STREAM) server.bind((host, port)) server.listen() clients = [] nicknames = [] def broadcast(message): for client in clients: client.send(message) def handle(client): while True: try: message = client.recv(1024) broadcast(message) except: index = clients.index(client) clients.pop(index) client.close() nickname = nicknames[index] broadcast(f'{nickname} Saiu do chat'.encode('ascii')) nicknames.pop(index) print(reset) break def receive(): while True: client, address = server.accept() print(red + f"Conectado pelo: {str(address)}") client.send('Usuario:'.encode('ascii')) nickname = client.recv(1024).decode('ascii') nicknames.append(nickname) clients.append(client) print(f'novo usuario conectado: {nickname}'.capitalize()) broadcast(f'{nickname} Entrou no chat'.encode('ascii')) client.send('\nConectou no server'.encode('ascii')) thread = threading.Thread(target=handle, args=(client,)) thread.start() print("Em busca...") receive()
Shell reverso completo - servidor
Envio de comandos por ssh sem troca de chaves a múltiplos servidores
Como agendar um backup automático do PostgreSQL no Cron evitando o problema de senha
Como preparar o Vim/Neovim para corrigir ortografia em português
Dark Web e Malwares na internet, quanto custa?
Configuração básica do Conky para mostrar informações sobre a sua máquina no Desktop
Como verificar o hash de um arquivo baixado da Internet e como criar um hash
Debian 12 - IPTABLES - removendo NFTABLES
OverWatch 2 - Abrindo portas do jogo no Iptables.
Como instalar o adaptador wifi USB Intelbras ACtion A1200 no Linux Mint
Como normalizar seus arquivos MP3 para que fiquem no mesmo volume
O que você está ouvindo agora? [2] (130)
Adaptado Bluetooth USB que funciona no Linux (27)
[C/C++] BRT - Bulk Renaming Tool
[Shell Script] Criação de Usuarios , Grupo e instalação do servidor de arquivos samba
[Shell Script] Tire screenshots com Scrot facilmente com Zscrot
[Shell Script] DioPSI - Script multidistro para instalar programas
[Shell Script] ARS Vídeos - Cortador de vídeos e webcam shooter