Cómo extraer enlaces de cualquier página web usando PowerShell

Como extraer enlaces de cualquier pagina web usando PowerShell

PowerShell 3 ofrece muchas funciones nuevas, incluidas algunas funciones nuevas y potentes relacionadas con la web. Hacen que la automatización web sea mucho más fácil, y hoy le mostraremos cómo extraer cada enlace de una página web y, opcionalmente, descargar el recurso si lo desea.

Raspando la Web con PowerShell

Hay dos nuevos cmdlets que facilitan la automatización web, Invoke-WebRequest, que facilita el análisis de contenido legible por humanos, e Invoke-RestMethod, que facilita la lectura del contenido legible por máquina. Dado que los enlaces son parte del código HTML de una página, son parte de elementos legibles por humanos. Todo lo que tiene que hacer para obtener una página web es usar Invoke-WebRequest y darle una URL.

Invoke-WebRequest – Uri ‘http://howtogeek.com’

1635026067 417 Como extraer enlaces de cualquier pagina web usando PowerShell

Si se desplaza hacia abajo, verá que la respuesta tiene una propiedad de enlaces, podemos usar la nueva función de enumeración de miembros de PowerShell 3 para filtrarlos.

(Invoke-WebRequest –Uri ‘http://howtogeek.com’). Enlaces

1635026067 368 Como extraer enlaces de cualquier pagina web usando PowerShell

Como puede ver, obtiene muchos enlaces, aquí es donde debe usar su imaginación para encontrar algo único para filtrar los enlaces que está buscando. Supongamos que queremos una lista de todos los artículos en la primera página.

((Invoke-WebRequest –Uri ‘http://howtogeek.com ‘). Enlaces | Where-Object {$ _. Href -like «http *»} | Donde clase -eq «título»). Título

1635026068 980 Como extraer enlaces de cualquier pagina web usando PowerShell

Otra gran cosa que puede hacer con los nuevos cmdlets es automatizar las descargas diarias. Echemos un vistazo a la imagen del día que se raspa automáticamente en el sitio web de Nat Geo. Para hacer esto, combinaremos los nuevos cmdlets web con Start-BitsTransfer.

$ IOTD = ((Invocar-WebRequest -Uri ‘http://photography.nationalgeographic.com/photography/photo-of-the-day/ ‘). Enlaces | Donde innerHTML -como «* Descargar fondo de pantalla *»). Href
Inicio-BitsTransfer -Fuente $ IOTD -Destino C: IOTD

Eso es todo lo que podemos decir al respecto. ¿Tienes algo interesante? Háznoslo saber en los comentarios.

Publicaciones Similares

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *