Network program python give me 10 Sample codes
- Simple client-server communication
# Server code
import socket
host = '127.0.0.1'
port = 5000
s = socket.socket()
s.bind((host, port))
s.listen(1)
conn, addr = s.accept()
print('Connected by', addr)
data = conn.recv(1024)
conn.sendall(data)
conn.close()
# Client code
import socket
host = '127.0.0.1'
port = 5000
s = socket.socket()
s.connect((host, port))
s.sendall(b'Hello, world')
data = s.recv(1024)
s.close()
print('Received', repr(data))
- Sending email using SMTP
import smtplib
from_addr = 'example@gmail.com'
to_addr = 'recipient@example.com'
subject = 'Test email'
body = 'This is a test email sent using Python'
message = f'Subject: {subject}\n\n{body}'
smtp_server = 'smtp.gmail.com'
smtp_port = 587
smtp_username = 'example@gmail.com'
smtp_password = 'password'
with smtplib.SMTP(smtp_server, smtp_port) as smtp:
smtp.ehlo()
smtp.starttls()
smtp.login(smtp_username, smtp_password)
smtp.sendmail(from_addr, to_addr, message)
- Retrieving web page using HTTP
import http.client
conn = http.client.HTTPSConnection('www.google.com')
conn.request('GET', '/')
response = conn.getresponse()
print(response.status, response.reason)
data = response.read()
print(data.decode('utf-8'))
- Downloading a file using FTP
import ftplib
ftp_server = 'ftp.example.com'
ftp_username = 'username'
ftp_password = 'password'
with ftplib.FTP(ftp_server, ftp_username, ftp_password) as ftp:
ftp.cwd('/public_html')
with open('example.txt', 'wb') as f:
ftp.retrbinary('RETR example.txt', f.write)
- Parsing XML using ElementTree
import xml.etree.ElementTree as ET
xml_string = '''
<bookstore>
<book category="cooking">
<title lang="en">Everyday Italian</title>
<author>Giada De Laurentiis</author>
<year>2005</year>
<price>30.00</price>
</book>
<book category="children">
<title lang="en">Harry Potter</title>
<author>J.K. Rowling</author>
<year>2005</year>
<price>29.99</price>
</book>
</bookstore>
'''
root = ET.fromstring(xml_string)
for book in root.findall('book'):
title = book.find('title').text
author = book.find('author').text
year = book.find('year').text
price = book.find('price').text
print(f'{title} by {author} ({year}) - ${price}')
- Using UDP for simple message exchange
# Server code
import socket
host = '127.0.0.1'
port = 5000
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
s.bind((host, port))
while True:
data, addr = s.recvfrom(1024)
print('Received', data.decode('utf-8'), 'from', addr)
s.sendto(b'ACK', addr)
# Client code
import socket
host = '127.0.0.1'
port = 5000
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
while True:
message = input('Enter message: ')
s.sendto(message.encode('utf-8'), (host, port))
data, addr = s.recvfrom(1024)
print('Received', data.decode('utf-8'), 'from', addr)
- Using JSON for data exchange
import json
data = {
'name': 'John Smith',
'age': 35,
'email': 'john.smith@example.com'
}
json_string = json.dumps(data)
print(json_string)
decoded_data = json.loads(json_string)
print(decoded_data)
- Using sockets to create a chat application
# Server code
import socket
import threading
host = '127.0.0.1'
port = 5000
clients = []
s = socket.socket()
s.bind((host, port))
s.listen()
def handle_client(conn, addr):
while True:
data = conn.recv(1024)
if not data:
break
for client in clients:
if client != conn:
client.sendall(data)
conn.close()
while True:
conn, addr = s.accept()
clients.append(conn)
print('Connected by', addr)
threading.Thread(target=handle_client, args=(conn, addr)).start()
# Client code
import socket
import threading
host = '127.0.0.1'
port = 5000
s = socket.socket()
s.connect((host, port))
def receive_messages():
while True:
data = s.recv(1024)
if not data:
break
print(data.decode('utf-8'))
threading.Thread(target=receive_messages).start()
while True:
message = input('Enter message: ')
s.sendall(message.encode('utf-8'))
- Using sockets to transfer files
# Sender code
import socket
host = '127.0.0.1'
port = 5000
filename = 'example.txt'
s = socket.socket()
s.connect((host, port))
with open(filename, 'rb') as f:
data = f.read()
s.sendall(data)
s.close()
# Receiver code
import socket
host = '127.0.0.1'
port = 5000
filename = 'example.txt'
s = socket.socket()
s.bind((host, port))
s.listen(1)
conn, addr = s.accept()
print('Connected by', addr)
with open(filename, 'wb') as f:
while True:
data = conn.recv(1024)
if not data:
break
f.write(data)
conn.close()
- Using sockets to create a simple HTTP server
import socket
host = '127.0.0.1'
port = 5000
s = socket.socket()
s.bind((host, port))
s.listen(1)
while True:
conn, addr = s.accept()
print('Connected by', addr)
data = conn.recv(1024)
request = data.decode('utf-8').split('\r\n')
method, path, protocol = request[0].split()
if method == 'GET':
if path == '/':
with open('index.html', 'rb') as f:
response_body = f.read()
response_headers = 'HTTP/1.1 200 OK\r\nContent-Type: text/html\r\nContent-Length: {}\r\n\r\n'.format(len(response_body))
conn.sendall(response_headers.encode('utf-8') + response_body)
else:
response_headers = 'HTTP/1.1 404 Not Found\r\n\r\n'
conn.sendall(response_headers.encode('utf-8'))
else:
response_headers = 'HTTP/1.1 405 Method Not Allowed\r\n\r\n'
conn.sendall(response_headers.encode('utf-8'))
conn.close()
原文地址: https://www.cveoy.top/t/topic/lS0 著作权归作者所有。请勿转载和采集!