Добавлены примеры TCP-клиента и TCP-сервера; UPD-сервера и UDP-клиента; TCP-клиент, который устанавливает соединение с vyatsu.ru по порту 80 и отправляет HTTP-запрос; файлы, связанные с работой API Gitea. Добавлены .gitignore, README.md, .env
This commit is contained in:
		
							parent
							
								
									55a019818e
								
							
						
					
					
						commit
						db071b5123
					
				
							
								
								
									
										1
									
								
								.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @ -0,0 +1 @@ | ||||
| .env | ||||
							
								
								
									
										9
									
								
								HTTP.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										9
									
								
								HTTP.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() | ||||
							
								
								
									
										4
									
								
								HTTPrequest.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								HTTPrequest.py
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,4 @@ | ||||
| import requests | ||||
| 
 | ||||
| response = requests.get("http://vyatsu.ru") | ||||
| print(response.text[:500]) | ||||
							
								
								
									
										16
									
								
								TCPclient.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										16
									
								
								TCPclient.py
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,16 @@ | ||||
| import socket | ||||
| 
 | ||||
| client = socket.socket(socket.AF_INET, socket.SOCK_STREAM) | ||||
| client.connect(('127.0.0.1', 10000)) | ||||
| 
 | ||||
| # Отправляем обычное сообщение | ||||
| client.sendall(b'hello server') | ||||
| data = client.recv(1024) | ||||
| print(f"Ответ от сервера: {data.decode()}") | ||||
| 
 | ||||
| # Отправляем сообщение для завершения работы сервера | ||||
| client.sendall(b'EXIT') | ||||
| data = client.recv(1024) | ||||
| print(f"Ответ от сервера: {data.decode()}") | ||||
| 
 | ||||
| client.close() | ||||
							
								
								
									
										28
									
								
								TCPserver.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										28
									
								
								TCPserver.py
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,28 @@ | ||||
| import socket | ||||
| 
 | ||||
| server = socket.socket(socket.AF_INET, socket.SOCK_STREAM) | ||||
| server.bind(("0.0.0.0", 10000)) | ||||
| server.listen(1) | ||||
| print("TCP сервер запущен") | ||||
| 
 | ||||
| while True: | ||||
|     conn, addr = server.accept() | ||||
|     print(f"Подключение от {addr}") | ||||
| 
 | ||||
|     data = conn.recv(1024) | ||||
|     if not data: | ||||
|         break | ||||
| 
 | ||||
|     # Проверяем на специальное сообщение для завершения работы | ||||
|     if data.upper() == b'EXIT': | ||||
|         print("Получено сообщение для завершения работы сервера.") | ||||
|         conn.sendall(b'Server is shutting down.') | ||||
|         conn.close() | ||||
|         break  # Выходим из цикла и завершаем работу сервера | ||||
| 
 | ||||
|     conn.sendall(data.upper()) | ||||
|     conn.close() | ||||
| 
 | ||||
| # Закрываем сервер после выхода из цикла | ||||
| server.close() | ||||
| print("Сервер завершил работу.") | ||||
							
								
								
									
										7
									
								
								UDPclient.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										7
									
								
								UDPclient.py
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,7 @@ | ||||
| import socket | ||||
| 
 | ||||
| client = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) | ||||
| client.sendto(b'HELLO SERVER', ('127.0.0.1', 10000)) | ||||
| data, _ = client.recvfrom(1024) | ||||
| print(f"Ответ от сервера: {data.decode()}") | ||||
| client.close() | ||||
							
								
								
									
										11
									
								
								UDPserver.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										11
									
								
								UDPserver.py
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,11 @@ | ||||
| import socket | ||||
| server = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) | ||||
| server.bind(('0.0.0.0', 10000))  # Измененный порт для сервера | ||||
| print("UDP сервер запущен на порту 10001") | ||||
| while True: | ||||
|     data, addr = server.recvfrom(1024) | ||||
|     print(f"Сообщение от {addr}: {data.decode()}") | ||||
|     # Изменяем данные (например, преобразуем в нижний регистр) | ||||
|     modified_data = data.lower() | ||||
|     # Отправляем измененные данные обратно клиенту | ||||
|     server.sendto(modified_data, addr) | ||||
							
								
								
									
										16
									
								
								createRepo.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										16
									
								
								createRepo.py
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,16 @@ | ||||
| import requests | ||||
| 
 | ||||
| TOKEN = "357a9e69997259eace0e9a3167550a114d3587b9" | ||||
| headers = {"Authorization": f"token {TOKEN}"} | ||||
| 
 | ||||
| # Параметры для нового репозитория | ||||
| data = { | ||||
|     "name": "my-new-repo", | ||||
|     "private": False, | ||||
|     "description": "Мой новый репозиторий" | ||||
| } | ||||
| 
 | ||||
| response = requests.post("https://git.vyatsu.ru/api/v1/user/repos", headers=headers, json=data) | ||||
| 
 | ||||
| print(response.status_code) | ||||
| print(response.json()) | ||||
							
								
								
									
										6
									
								
								requestAPIgitea.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								requestAPIgitea.py
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,6 @@ | ||||
| import requests | ||||
| 
 | ||||
| TOKEN = "TOKEN" | ||||
| headers = {"Authorization": f"token {TOKEN}"} | ||||
| response = requests.get("https://git.vyatsu.ru/api/v1/user", headers=headers) | ||||
| print(response.json()) | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user