diff --git a/.gitignore b/.gitignore index f4b25c8..7b86ff3 100644 --- a/.gitignore +++ b/.gitignore @@ -18,4 +18,5 @@ token.txt # Временные файлы *.tmp *.bak -*.swp \ No newline at end of file +*.swp +.env \ No newline at end of file diff --git a/create_repo.py b/create_repo.py new file mode 100644 index 0000000..5605d97 --- /dev/null +++ b/create_repo.py @@ -0,0 +1,28 @@ +import os +import requests + +from dotenv import load_dotenv + +load_dotenv() + +TOKEN = os.getenv("TOKEN") + +headers = { + "Authorization": f"token {TOKEN}" +} + +data = { + "name": "lab3-api-test" +} + +response = requests.post( + "https://git.vyatsu.ru/api/v1/user/repos", + headers=headers, + json=data +) + +print("Статус:", response.status_code) + +print(response.json()) + +input() diff --git a/gitea_api.py b/gitea_api.py new file mode 100644 index 0000000..abc663b --- /dev/null +++ b/gitea_api.py @@ -0,0 +1,23 @@ +import os +import requests + +from dotenv import load_dotenv + +load_dotenv() + +TOKEN = os.getenv("TOKEN") + +headers = { + "Authorization": f"token {TOKEN}" +} + +response = requests.get( + "https://git.vyatsu.ru/api/v1/user", + headers=headers +) + +print("Статус:", response.status_code) + +print(response.json()) + +input("\nНажми Enter...") diff --git a/http_requests.py b/http_requests.py new file mode 100644 index 0000000..5066635 --- /dev/null +++ b/http_requests.py @@ -0,0 +1,41 @@ +import socket + +client = socket.socket(socket.AF_INET, socket.SOCK_STREAM) + +print("Подключение к серверу...") + +client.connect(("vyatsu.ru", 80)) + +request = ( + "GET / HTTP/1.1\r\n" + "Host: vyatsu.ru\r\n" + "User-Agent: Mozilla/5.0\r\n" + "Accept: */*\r\n" + "Connection: close\r\n" + "\r\n" +) + +print("Отправка запроса...\n") + +client.sendall(request.encode()) + +response = b"" + +running = True + +while running: + + data = client.recv(4096) + + if data: + response += data + else: + running = False + +decoded = response.decode(errors="ignore") + +print(decoded[:5000]) + +client.close() + +input("\nНажми Enter...") diff --git a/http_socket.py b/http_socket.py new file mode 100644 index 0000000..b3f02a0 --- /dev/null +++ b/http_socket.py @@ -0,0 +1,26 @@ +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" + "User-Agent: python-requests/2.32.3\r\n" + "Accept-Encoding: gzip, deflate\r\n" + "Accept: */*\r\n" + "Connection: keep-alive\r\n" + "\r\n" +) + +client.sendall(request.encode()) + +response = client.recv(4096) + +print(response.decode(errors="ignore")) + +client.close() diff --git a/src/tcp_client.py b/src/tcp_client.py index e69de29..2215186 100644 --- a/src/tcp_client.py +++ b/src/tcp_client.py @@ -0,0 +1,15 @@ +import socket + +client = socket.socket(socket.AF_INET, socket.SOCK_STREAM) + +client.connect(("127.0.0.1", 10000)) + +message = input("Введите сообщение: ") + +client.sendall(message.encode()) + +data = client.recv(1024) + +print(f"Ответ сервера: {data.decode()}") + +client.close() diff --git a/src/tcp_server.py b/src/tcp_server.py index e69de29..94b5ac3 100644 --- a/src/tcp_server.py +++ b/src/tcp_server.py @@ -0,0 +1,34 @@ +import socket + +server = socket.socket(socket.AF_INET, socket.SOCK_STREAM) + +server.bind(("0.0.0.0", 10000)) + +server.listen(1) + +print("TCP сервер запущен") + +running = True + +while running: + + conn, addr = server.accept() + + print(f"Подключение от {addr}") + + data = conn.recv(1024) + + if data: + + text = data.decode() + + print(f"Получено: {text}") + + conn.sendall(data.upper()) + + if text.upper() == "EXIT": + running = False + + conn.close() + +server.close() diff --git a/src/udp_client.py b/src/udp_client.py index e69de29..83897f5 100644 --- a/src/udp_client.py +++ b/src/udp_client.py @@ -0,0 +1,20 @@ +import socket + +client = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) + +running = True + +while running: + + message = input("Введите сообщение: ") + + client.sendto(message.encode(), ("127.0.0.1", 12000)) + + data, _ = client.recvfrom(1024) + + print(f"Ответ сервера: {data.decode()}") + + if message.upper() == "EXIT": + running = False + +client.close() diff --git a/src/udp_server.py b/src/udp_server.py index e69de29..cdbdc4f 100644 --- a/src/udp_server.py +++ b/src/udp_server.py @@ -0,0 +1,26 @@ +import socket + +server = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) + +server.bind(("0.0.0.0", 12000)) + +print("UDP сервер запущен") + +running = True + +while running: + + data, addr = server.recvfrom(1024) + + text = data.decode() + + print(f"Сообщение от {addr}: {text}") + + response = "СЕРВЕР: " + text[::-1] + + server.sendto(response.encode(), addr) + + if text.upper() == "EXIT": + running = False + +server.close()