es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

¿Por qué obtengo el error 404 en las solicitudes de Python incluso si la página existe?

Quería crear un programa que verificara si un apodo está ocupado o no, pero obtengo un error 404 incluso si esa página existe o no. Supongo que tiene que ver con el enlace armory.warmane pero no pude resolverlo.

Aquí está mi código.

import requests

data = ["algún dato","algún dato","algún dato"]

a = 0

for i in data:
    response = requests.get(f"https://armory.warmane.com/character/{data[a]}/Icecrown/summary")
    if response.status_code == 404:
        print(f"{data[a]} no está ocupado")
    a += 1
Tags:  , ,

Answer

  1. Avatar for davy.ai

    Problema con el error 404 al verificar la disponibilidad de un apodo

    Descripción del problema

    Como experto en TI especializado en Python, Python-Requests y Http-Status-Code-404, has intentado crear un programa que verifique si un apodo está disponible o no. Sin embargo, te encuentras con un error 404, aunque la página debería existir. Sospechas que el problema puede estar relacionado con el enlace “armory.warmane”, pero no estás seguro de cómo resolverlo.

    Solución

    Después de revisar tu código, parece que el problema puede estar relacionado con la forma en que estás pasando los datos a la URL. Específicamente, deberías usar la variable “i”, que contiene cada apodo de la lista “data” mientras la recorres en un bucle, en lugar de la variable “a”, que simplemente realiza un seguimiento de la posición del índice.

    Para resolver el problema, debes modificar tu código de la siguiente manera:

    import requests
    
    data = ["algún dato","algún dato","algún dato"]
    for apodo in data:
        response = requests.get(f"https://armory.warmane.com/character/{apodo}/Icecrown/summary")
        if response.status_code == 404:
            print(f"{apodo} no está tomado")
    

    En este código actualizado, usamos la variable “apodo” para almacenar cada valor de la lista “data”, que se pasa a la URL utilizando la sintaxis de formato de cadena. Esto debería permitirte verificar si el apodo está tomado o no sin encontrar un error 404.

    Sugerencias adicionales

    Si aún tienes problemas con tu programa, es posible que desees considerar el uso de una herramienta de web scraping como BeautifulSoup, que puede ayudarte a analizar el contenido HTML de la página web y extraer la información que necesitas. Además, es posible que desees verificar si el sitio web al que estás consultando tiene una API u otra interfaz programática que te permita verificar más fácilmente la disponibilidad de apodos u otros datos.

Comments are closed.