Загрузка данных


import socket
import json
import re

HOST = 'tasks.duckerz.ru'
PORT = 30009

s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.settimeout(120.0)
s.connect((HOST, PORT))

# Читаем первое сообщение
data = b""
try:
    while b"Send to Bob:" not in data:
        chunk = s.recv(4096)
        if not chunk:
            break
        data += chunk
except socket.timeout:
    pass

text = data.decode('utf-8', errors='ignore')
print(f"[*] Получено:\n{text}\n")

# Отправляем {"answer": 1}
payload = json.dumps({"answer": 1})
print(f"[*] Отправляем: {payload}")
s.sendall((payload + "\n").encode())

# Ждем 60 секунд
print("[*] Ждем 60 секунд...")
s.settimeout(60.0)
try:
    while True:
        resp = s.recv(4096)
        if not resp:
            print("[-] Соединение закрыто после ожидания")
            break
        decoded = resp.decode('utf-8', errors='ignore')
        print(f"[+] Ответ: {decoded}")
        if "DUCKERZ{" in decoded:
            print(f"\n[!!!] ФЛАГ: {decoded}\n")
            break
except socket.timeout:
    print("[-] Таймаут 60 секунд — сервер молчит")

s.close()