ПР2.3: TCP, UDP, HTTP, requests, Wireshark

This commit is contained in:
Михаил Огнев 2026-05-23 22:29:53 +03:00
commit 6c9a514f67
10 changed files with 96 additions and 0 deletions

0
.gitignore vendored Normal file
View File

0
README.md Normal file
View File

0
api_git_example.py Normal file
View File

17
http_socket_client.py Normal file
View File

@ -0,0 +1,17 @@
import socket
client = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
client.connect(("vyatsu.ru", 80))
request = (
"GET / HTTP/1.1\r\n"
"Host: vyatsu.ru\r\n"
"Connection: close\r\n"
"\r\n"
)
client.sendall(request.encode("utf-8"))
response = client.recv(4096)
print(response.decode(errors="ignore"))
client.close()

4
requests_example.py Normal file
View File

@ -0,0 +1,4 @@
import requests
response = requests.get("http://vyatsu.ru")
print(response.text[:500])

12
tcp_client.py Normal file
View File

@ -0,0 +1,12 @@
import socket
client = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
client.connect(("127.0.0.1", 12000))
message = "hello server"
client.sendall(message.encode())
data = client.recv(1024)
print(f"Ответ от сервера: {data.decode()}")
client.close()

30
tcp_server.py Normal file
View File

@ -0,0 +1,30 @@
import socket
server = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
server.bind(("0.0.0.0", 12000))
server.listen(1)
print("TCP сервер запущен и ожидает подключения...")
while True:
conn, addr = server.accept()
print(f"Подключение от {addr}")
data = conn.recv(1024)
if not data:
conn.close()
continue
message = data.decode()
print(f"Получено сообщение: {message}")
response = message.upper()
conn.sendall(response.encode())
conn.close()
if response == "EXIT":
print("Сервер завершает работу")
break
server.close()

8
token.py Normal file
View File

@ -0,0 +1,8 @@
import os
import requests
TOKEN = os.getenv("GIT_VYATSU_TOKEN") # токен через переменную окружения
headers = {"Authorization": f"token {TOKEN}"}
response = requests.get("https://git.vyatsu.ru/api/v1/user", headers=headers)
print(response.json())

11
udp_client.py Normal file
View File

@ -0,0 +1,11 @@
import socket
client = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
message = "привет сервер"
client.sendto(message.encode(), ("127.0.0.1", 10001))
data, _ = client.recvfrom(1024)
print(f"Ответ от сервера: {data.decode()}")
client.close()

14
udp_server.py Normal file
View File

@ -0,0 +1,14 @@
import socket
server = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
server.bind(("0.0.0.0", 10001))
print("UDP сервер запущен и ожидает сообщения...")
while True:
data, addr = server.recvfrom(1024)
message = data.decode()
print(f"Сообщение от {addr}: {message}")
response = message.upper()
server.sendto(response.encode(), addr)