Connect with us

Wie man

So extrahieren Sie Links von jeder Webseite mit PowerShell

So extrahieren Sie Links von jeder Webseite mit PowerShell

PowerShell 3 verfügt über viele neue Funktionen, einschließlich einiger leistungsstarker neuer webbezogener Funktionen. Sie vereinfachen die Automatisierung des Webs erheblich. Heute zeigen wir Ihnen, wie Sie jeden einzelnen Link von einer Webseite extrahieren und die Ressource optional herunterladen können, wenn Sie dies wünschen.

Scraping des Web mit PowerShell

Es gibt zwei neue Cmdlets, die die Automatisierung des Webs vereinfachen: Invoke-WebRequest, mit dem das Lesen von lesbaren Inhalten erleichtert wird, und Invoke-RestMethod, mit dem maschinenlesbare Inhalte leichter gelesen werden können. Da Links Teil des HTML-Codes einer Seite sind, sind sie Teil des von Menschen lesbaren Materials. Alles, was Sie tun müssen, um eine Webseite zu erhalten, ist Invoke-WebRequest zu verwenden und ihr eine URL zu geben.

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

Wenn Sie nach unten scrollen, sehen Sie, dass die Antwort eine Links-Eigenschaft hat. Wir können die neue Elementaufzählungsfunktion von PowerShell 3 verwenden, um diese herauszufiltern.

(Invoke-WebRequest –Uri ‚http://howtogeek.com‘) .Links

Wie Sie sehen, erhalten Sie viele Links zurück. Hier müssen Sie Ihre Fantasie einsetzen, um etwas Einzigartiges zu finden, mit dem Sie die gesuchten Links herausfiltern können. Nehmen wir an, wir möchten eine Liste aller Artikel auf der Titelseite.

((Invoke-WebRequest –Uri ‚http://howtogeek.com ‚) .Links | Where-Object {$ _. Href-like “http *”} | Wobei Klasse -eq „Titel“). Titel

Eine weitere großartige Sache, die Sie mit den neuen Cmdlets tun können, ist die Automatisierung alltäglicher Downloads. Schauen wir uns an, wie das Bild des Tages automatisch von der Nat Geo-Website entfernt wird. Dazu kombinieren wir die neuen Web-Cmdlets mit Start-BitsTransfer.

$ IOTD = ((Invoke-WebRequest -Uri ‚http://photography.nationalgeographic.com/photography/photo-of-the-day/‘).Links | Wo innerHTML-like „* Wallpaper herunterladen *“). Href
Start-BitsTransfer -Quelle $ IOTD -Ziel C: IOTD

Das ist alles dazu. Hast du eigene nette Tricks? Lass es uns in den Kommentaren wissen.

Continue Reading
Click to comment

Leave a Reply

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Tendencia