import cloudscraper
from bs4 import BeautifulSoup

# Datos de acceso
USERNAME = "terryflaps"
PASSWORD = "wasamasa123"
LOGIN_URL = "https://rutracker.org/forum/login.php"
SEARCH_URL = "https://rutracker.org/forum/tracker.php"
BASE_URL = "https://rutracker.org/forum/"
headers = {
    "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/110.0.0.0 Safari/537.36",
    "Referer": "https://rutracker.org/forum/index.php",
    "Origin": "https://rutracker.org",
}

# Sesión para autenticación
session = cloudscraper.create_scraper()

# Iniciar sesión
login_data = {
    'login_username': USERNAME,
    'login_password': PASSWORD,
    'login': 'Вход'  # "Вход" en ruso significa "Entrar"
}

response = session.post(LOGIN_URL, data=login_data, headers=headers)
if "logout" in response.text:
    print("✅ Inicio de sesión exitoso")
else:
    print("❌ Error en el inicio de sesión")
    exit()

# Realizar una búsqueda
busqueda = "jimi hendrix"
search_params = {"nm": busqueda}
search_response = session.get(SEARCH_URL, params=search_params)
soup = BeautifulSoup(search_response.text, 'html.parser')

# Buscar enlaces a temas de torrents
topics = soup.select("a.tLink")

if not topics:
    print("⚠️ No se encontraron torrents para la búsqueda.")
    exit()

print(f"🔎 Se encontraron {len(topics)} torrents.")

for topic in topics[:5]:  # Limita a los primeros 5 resultados
    topic_title = topic.text.strip()
    topic_url = BASE_URL + topic['href']  # URL de la página del torrent

    print(f"\n🔗 Buscando en: {topic_title}")
    topic_page = session.get(topic_url)
    topic_soup = BeautifulSoup(topic_page.text, 'html.parser')

    # Buscar el magnet link dentro de la página del torrent
    magnet_link = topic_soup.select_one("a.magnet-link")
    if magnet_link:
        print(f"✅ Magnet link encontrado: {magnet_link['href']}")
    else:
        print("❌ No se encontró magnet link en esta página.")

