завершил задание
This commit is contained in:
commit
fe5f874ea4
2
.gitignore
vendored
Normal file
2
.gitignore
vendored
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
venv
|
||||||
|
.env
|
14
Reqtoken.py
Normal file
14
Reqtoken.py
Normal 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
12
TCP2client.py
Normal 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
35
TCP2server.py
Normal 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
27
TCPfakereq.py
Normal 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
4
TCPreqvyatsu.py
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
import requests
|
||||||
|
|
||||||
|
response = requests.get("http://vyatsu.ru")
|
||||||
|
print(response.text[:500])
|
9
TCPvyatsu.py
Normal file
9
TCPvyatsu.py
Normal 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
11
UDP2client.py
Normal 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
31
UDP2server.py
Normal 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
12
client.py
Normal 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
22
createrep.py
Normal 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
35
server.py
Normal 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
11
udpclient.py
Normal 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
31
udpserver.py
Normal 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()
|
Loading…
Reference in New Issue
Block a user