Python obtiene la dirección IP de la URL

       (Crear no es fácil, recuerda darle like)

         En la era de la información, a menudo necesitamos obtener direcciones IP de URL. Busqué una manera de lograrlo en Internet durante más de diez minutos, pero no podía ejecutarse o estaba demasiado hinchado. Así que tuve un destello de inspiración y pensé en un método simple.

        Dado que la función gethostbyname del módulo de socket solo puede recibir el nombre de host, primero escriba una función para obtener el nombre de host de la URL.

        Una URL normal siempre consta de varias partes:

        <protocolo>://<tipo de servidor> .<nombre de dominio>/<directorio>/<nombre de archivo>

        Como https://www.baidu.com/ , https://www.csdn.net/

        Y el nombre de host que necesitamos es la cadena en el medio:

        <tipo de servidor> .<nombre de dominio>

        A saber, www.baidu.com , www.csdn.net

        Se puede encontrar que el nombre de host está entre el primer "//" y el primer "/". A partir de esto, podemos escribir fácilmente una función para separar el nombre de host de la URL.

def gethost(url):
    output = ''
    if '//' in url:
        output = url.split('//')[1]
        if '/' in output:
            output = output.split('/')[0]
    elif '/' in url:
        output = url.split('/')[0]
    return output

        Esta es una función simple que solo funciona como se esperaba si la URL de entrada es relativamente normal. Pero es lo suficientemente bueno para las URL copiadas y pegadas desde el navegador. Encapsúlelo si es necesario, o puede separar los nombres de host mediante expresiones regulares.

        Luego traiga el valor devuelto a gethostbyname para obtener el resultado.

        El procedimiento completo es el siguiente:

from socket import gethostbyname

def gethost(url):
    output = ''
    if '//' in url:
        output = url.split('//')[1]
        if '/' in output:
            output = output.split('/')[0]
    elif '/' in url:
        output = url.split('/')[0]
    return output

def getip(url):
    return gethostbyname(gethost(url))

        Puede obtener la ip de la URL llamando a la función getip .

        La prueba es la siguiente:

url = (
    'https://www.baidu.com/',
    'https://www.csdn.net/',
    'https://mirrors.tuna.tsinghua.edu.cn/#'
)

for i in url:
    print(i, getip(i))

        resultado:

f505137e49574aefb09552f482929cabina.png

Referencias:

 

Enciclopedia Baidu - Verificación

 

 

Supongo que te gusta

Origin blog.csdn.net/m0_71713477/article/details/127174636
Recomendado
Clasificación