завершил задание

This commit is contained in:
Кирилл Тюрнин 2025-05-13 21:45:33 +03:00
commit fe5f874ea4
15 changed files with 256 additions and 0 deletions

2
.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
venv
.env

0
README.md Normal file
View File

14
Reqtoken.py Normal file
View File

@ -0,0 +1,14 @@
import requests
import os
from dotenv import load_dotenv
load_dotenv() # Загружаем переменные окружения из .env
TOKEN = os.getenv("GITEA_TOKEN")
if not TOKEN:
raise Exception("Токен не найден в переменных окружения!")
headers = {"Authorization": f"token {TOKEN}"}
response = requests.get("https://git.vyatsu.ru/api/v1/user", headers=headers)
print(response.json())

12
TCP2client.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', 11000))
message = input("Введите строку для отправки на сервер: ")
client.sendall(message.encode())
data = client.recv(1024)
print(f"Ответ от сервера: {data.decode()}")
client.close()

35
TCP2server.py Normal file
View File

@ -0,0 +1,35 @@
import socket
def uppercase_vowels(text):
vowels = 'aeiouаеёиоуыэюя'
result = ''
for char in text:
if char.lower() in vowels:
result += char.upper()
else:
result += char
return result
server = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
server.bind(("0.0.0.0", 11000))
server.listen(1)
print("TCP сервер запущен на порту 11000")
while True:
conn, addr = server.accept()
print(f"Подключение от {addr}")
data = conn.recv(1024)
if not data:
break
text = data.decode()
transformed = uppercase_vowels(text)
print(f"Получено: {text} | Отправляем: {transformed}")
conn.sendall(transformed.encode())
conn.close()
if text.upper() == 'EXIT':
print("Сервер завершает работу.")
break

27
TCPfakereq.py Normal file
View File

@ -0,0 +1,27 @@
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.31.0\r\n"
"Accept-Encoding: gzip, deflate\r\n"
"Accept: /\r\n"
"Connection: close\r\n"
"\r\n"
)
client.sendall(request.encode())
response = b""
while True:
part = client.recv(4096)
if not part:
break
response += part
print(response.decode(errors='ignore')) # 'ignore' — на случай gzip/некорректных символов
client.close()

4
TCPreqvyatsu.py Normal file
View File

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

9
TCPvyatsu.py Normal file
View File

@ -0,0 +1,9 @@
import socket
client = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
client.connect(('vyatsu.ru', 80))
request = "GET / HTTP/1.1\r\nHost: vyatsu.ru\r\n\r\n"
client.sendall(request.encode())
response = client.recv(4096)
print(response.decode())
client.close()

11
UDP2client.py Normal file
View File

@ -0,0 +1,11 @@
import socket
client = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
message = input("Введите строку для отправки на сервер: ")
client.sendto(message.encode(), ('127.0.0.1', 11001)) # Новый порт 10001
data, _ = client.recvfrom(1024)
print(f"Ответ от сервера: {data.decode()}")
client.close()

31
UDP2server.py Normal file
View File

@ -0,0 +1,31 @@
import socket
def uppercase_vowels(text):
vowels = 'aeiouаеёиоуыэюя'
result = ''
for char in text:
if char.lower() in vowels:
result += char.upper()
else:
result += char
return result
server = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
server.bind(("0.0.0.0", 11001))
print("UDP сервер запущен на порту 11001")
while True:
data, addr = server.recvfrom(1024)
text = data.decode()
print(f"Получено от {addr}: {text}")
transformed = uppercase_vowels(text)
print(f"Отправляем: {transformed}")
server.sendto(transformed.encode(), addr)
if text.upper() == 'EXIT':
print("Сервер завершает работу.")
break
server.close()

12
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', 10000))
message = input("Введите строку для отправки на сервер: ")
client.sendall(message.encode())
data = client.recv(1024)
print(f"Ответ от сервера: {data.decode()}")
client.close()

22
createrep.py Normal file
View File

@ -0,0 +1,22 @@
import requests
import os
from dotenv import load_dotenv
load_dotenv()
TOKEN = os.getenv("GITEA_WRITE_TOKEN")
headers = {"Authorization": f"token {TOKEN}"}
data = {
"name": "3weekturka",
"description": "Репозиторий созданный через API",
"private": False,
"auto_init": True
}
response = requests.post("https://git.vyatsu.ru/api/v1/user/repos", json=data, headers=headers)
print("Status code:", response.status_code)
print("Text:", response.text)

35
server.py Normal file
View File

@ -0,0 +1,35 @@
import socket
def uppercase_vowels(text):
vowels = 'aeiouаеёиоуыэюя'
result = ''
for char in text:
if char.lower() in vowels:
result += char.upper()
else:
result += char
return result
server = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
server.bind(("0.0.0.0", 10000))
server.listen(1)
print("TCP сервер запущен на порту 10000")
while True:
conn, addr = server.accept()
print(f"Подключение от {addr}")
data = conn.recv(1024)
if not data:
break
text = data.decode()
transformed = uppercase_vowels(text)
print(f"Получено: {text} | Отправляем: {transformed}")
conn.sendall(transformed.encode())
conn.close()
if text.upper() == 'EXIT':
print("Сервер завершает работу.")
break

11
udpclient.py Normal file
View File

@ -0,0 +1,11 @@
import socket
client = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
message = input("Введите строку для отправки на сервер: ")
client.sendto(message.encode(), ('127.0.0.1', 10001)) # Новый порт 10001
data, _ = client.recvfrom(1024)
print(f"Ответ от сервера: {data.decode()}")
client.close()

31
udpserver.py Normal file
View File

@ -0,0 +1,31 @@
import socket
def uppercase_vowels(text):
vowels = 'aeiouаеёиоуыэюя'
result = ''
for char in text:
if char.lower() in vowels:
result += char.upper()
else:
result += char
return result
server = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
server.bind(("0.0.0.0", 10001))
print("UDP сервер запущен на порту 10001")
while True:
data, addr = server.recvfrom(1024)
text = data.decode()
print(f"Получено от {addr}: {text}")
transformed = uppercase_vowels(text)
print(f"Отправляем: {transformed}")
server.sendto(transformed.encode(), addr)
if text.upper() == 'EXIT':
print("Сервер завершает работу.")
break
server.close()