Me gustaría extraer el dominio de nivel superior y el dominio de segundo nivel de una URL como "https://apple.stackexchange.com/questions/ask"
Ejemplo de URL con el resultado deseado a continuación.
https://apple.stackexchange.com/questions/ask
stackexchange.com
https://www.nytimes.com/2019/07/16/science/5g-cellphones-wireless-cancer.html
nytimes.com
https://nextdoor.com/news_feed/?post=117602&ct=-A17-ghvVOF0tfn9vptW_5a7JOBEyP4w6_hJAZUnMQqN56952&ec=OWKiQRDj9vEHefhwfGYAE0s%3D&lc=1002&is=tpe
nextdoor.com
https://www.amazon.com/gp/product/B007B60SCG/ref=ox_sc_act_title_1?smid=ATVPDKIKX0DER&psc=1
amazon.com
http://www.verizon.net/index.php
verizon.net
Estoy ignorando esos dominios de múltiples niveles. Prefiero usar Bash en macOS.
Hay muchas páginas sobre cómo obtener el nombre de dominio completo:
-
Extraer nombre de dominio de URL usando sustitución de parámetros de shell bash
https://www.cyberciti.biz/faq/get-extract-domain-name-from-url-in-linux-unix-bash/
-
echo http://example.com/index.php | awk -F[/:] '{print $4}'
No necesito este nivel de perfección.
0 votos
Si nadie tiene una respuesta después de unos días, considera agregar una pequeña edición con una tabla de 3 o 4 ejemplos de lo que realmente significa "top/second". La biblioteca que mencionas tiene una tabla de búsqueda, así que no sabemos si te importa un patrón o simplemente una tabla de búsqueda más pequeña.
3 votos
¿Solo necesitas extraer nombres de dominio
.com
? ¿Te preocupa acerca de dominios de múltiples niveles, como.co.uk
?0 votos
No tenía ninguna idea de cómo se llamaban los componentes de una URL. En mi búsqueda en estos foros, el nombre de dominio parecía incluir www.example.com, lo cual no quería. Solo quería example.com. Recurrí a Google, donde encontré esos nombres. No parece haber una definición uniforme de los componentes. mattcutts.com/blog/seo-glossary-url-definitions y doepud.co.uk/blog/anatomy-of-a-url y doepud.co.uk/blog/anatomy-of-a-url Por alguna razón, parece que la gente en el Reino Unido es la más prolífica en la explicación de los componentes de una URL, pero también tienen nombres divertidos.
1 votos
Un nombre de dominio es eso, un nombre. La única parte verdaderamente estandarizada es el último elemento (TLD, dominio de nivel superior), todo lo demás es simplemente un grupo de cadenas concatenadas por '.' El Reino Unido y algunos otros países tienen una segunda capa "por debajo" del TLD, pero incluso es solo una convención.
1 votos
Ver rfc-editor.org/info/rfc3986 para la definición formal y en.wikipedia.org/wiki/Uniform_Resource_Identifier para una descripción más accesible de la URL.