it.phhsnews.com


it.phhsnews.com / Come estrarre i collegamenti da qualsiasi pagina Web Utilizzando PowerShell

Come estrarre i collegamenti da qualsiasi pagina Web Utilizzando PowerShell


PowerShell 3 ha molte nuove funzionalità, incluse alcune potenti nuove funzionalità relative al web. Semplificano notevolmente l'automazione del Web e oggi mostreremo come estrarre ogni singolo link da una pagina Web e, se lo desideri, scaricare la risorsa.

Scraping The Web With PowerShell

Ce ne sono due nuovi cmdlet che rendono più semplice l'automazione del Web, Invoke-WebRequest, che semplifica l'analisi dei contenuti leggibili dall'uomo e Invoke-RestMethod che semplifica la lettura dei contenuti leggibili dalla macchina. Poiché i collegamenti fanno parte dell'HTML di una pagina, fanno parte delle cose leggibili dall'uomo. Tutto quello che devi fare per ottenere una pagina web è utilizzare Invoke-WebRequest e dargli un URL.

Invoke-WebRequest -Uri '//phhsnews.com'

Se scorri verso il basso vedrai che la risposta è una proprietà link, possiamo usare la nuova funzione di enumerazione dei membri di PowerShell 3 per filtrarli.

(Invoke-WebRequest -Uri '//phhsnews.com') .Links

Come puoi vedere ottieni molto di collegamenti indietro, questo è dove devi usare la tua immaginazione per trovare qualcosa di unico per filtrare i link che stai cercando. Supponiamo di volere un elenco di tutti gli articoli in prima pagina.

((Invoke-WebRequest -Uri '//phhsnews.com') .Links | Dove-Object {$ _. Href -like "http * "} | Dove classe -eq" titolo "). Titolo

Un'altra grande cosa che puoi fare con i nuovi cmdlet è automatizzare i download di tutti i giorni. Vediamo automaticamente come raschiare l'immagine del giorno dal sito di Nat Geo, per fare questo uniremo i nuovi cmdlet web con Start-BitsTransfer.

$ IOTD = ((Invoke-WebRequest -Uri ' // photography.nationalgeographic.com/photography/photo-of-the-day/').Links | Dove innerHTML -like "* Download Wallpaper *"). href
Start-BitsTransfer -Source $ IOTD -Destinazione C: IOTD

Questo è tutto ciò che c'è da fare. Hai qualche trucco per te? Fateci sapere nei commenti.


Come definire la directory di base per il comando

Come definire la directory di base per il comando "cd" in Linux

Per impostazione predefinita, la finestra Terminale in Linux si apre sulla tua directory home. Per passare a qualsiasi directory che non sia direttamente nella directory home, è necessario fornire il percorso completo o utilizzare il comando "cd" più volte. Ad esempio, lavoro regolarmente con più directory all'interno della directory Documenti, che è in la directory home.

(how-to)

Come installare e gestire i pacchetti Snap su Ubuntu 16.04 LTS

Come installare e gestire i pacchetti Snap su Ubuntu 16.04 LTS

Ubuntu 16.04 LTS ha introdotto i pacchetti "Snap", che sono un nuovo fantastico modo di installare app. Gli snap richiedono diversi comandi del terminale: apt-get e dpkg ti permetteranno solo di installare pacchetti .deb alla vecchia maniera, non gli snap. Gli snap-che hanno l'estensione ".snap" sono più simili ai contenitori.

(how-to)