Comment extraire des liens de n'importe quelle page Web à l'aide de PowerShell

Table des matières:

Comment extraire des liens de n'importe quelle page Web à l'aide de PowerShell
Comment extraire des liens de n'importe quelle page Web à l'aide de PowerShell

Vidéo: Comment extraire des liens de n'importe quelle page Web à l'aide de PowerShell

Vidéo: Comment extraire des liens de n'importe quelle page Web à l'aide de PowerShell
Vidéo: Tuto Windows 7 - Personnaliser la barre des tâches - YouTube 2024, Avril
Anonim
PowerShell 3 comporte de nombreuses nouvelles fonctionnalités, notamment de nouvelles fonctionnalités puissantes liées au Web. Ils simplifient considérablement l'automatisation du Web et nous allons vous montrer comment extraire chaque lien d'une page Web et éventuellement télécharger la ressource si vous le souhaitez.
PowerShell 3 comporte de nombreuses nouvelles fonctionnalités, notamment de nouvelles fonctionnalités puissantes liées au Web. Ils simplifient considérablement l'automatisation du Web et nous allons vous montrer comment extraire chaque lien d'une page Web et éventuellement télécharger la ressource si vous le souhaitez.

Gratter le Web avec PowerShell

Deux nouvelles applets de commande facilitent l'automatisation Web, Invoke-WebRequest, qui facilite l'analyse du contenu lisible par l'homme, et Invoke-RestMethod, qui facilite la lecture du contenu lisible par machine. Puisque les liens font partie du code HTML d'une page, ils font partie du contenu lisible par l'homme. Pour obtenir une page Web, il vous suffit d'utiliser Invoke-WebRequest et de lui attribuer une URL.

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

Si vous faites défiler la page, vous verrez que la réponse a une propriété links, nous pouvons utiliser la nouvelle fonctionnalité d’énumération des membres de PowerShell 3 pour les filtrer.
Si vous faites défiler la page, vous verrez que la réponse a une propriété links, nous pouvons utiliser la nouvelle fonctionnalité d’énumération des membres de PowerShell 3 pour les filtrer.

(Invoke-WebRequest –Uri ‘https://howtogeek.com’).Links

Comme vous pouvez le constater, beaucoup de liens vous sont renvoyés. Vous devez utiliser votre imagination pour trouver quelque chose d'unique qui vous permettra de filtrer les liens que vous recherchez. Supposons que nous voulions une liste de tous les articles sur la page d'accueil.
Comme vous pouvez le constater, beaucoup de liens vous sont renvoyés. Vous devez utiliser votre imagination pour trouver quelque chose d'unique qui vous permettra de filtrer les liens que vous recherchez. Supposons que nous voulions une liste de tous les articles sur la page d'accueil.

((Invoke-WebRequest –Uri ‘https://howtogeek.com’).Links | Where-Object {$_.href -like “http*”} | Where class -eq “title”).Title

Une autre grande chose à faire avec les nouvelles applets de commande est l’automatisation des téléchargements quotidiens. Voyons comment effacer automatiquement l'image de la journée de congé du site Web de Nat Geo. Pour ce faire, nous allons associer les nouvelles applets de commande Web à Start-BitsTransfer.
Une autre grande chose à faire avec les nouvelles applets de commande est l’automatisation des téléchargements quotidiens. Voyons comment effacer automatiquement l'image de la journée de congé du site Web de Nat Geo. Pour ce faire, nous allons associer les nouvelles applets de commande Web à Start-BitsTransfer.

$IOTD = ((Invoke-WebRequest -Uri ‘https://photography.nationalgeographic.com/photography/photo-of-the-day/’).Links | Where innerHTML -like “*Download Wallpaper*”).href Start-BitsTransfer -Source $IOTD -Destination C:IOTD

C'est tout ce qu'on peut en dire. Avez-vous des astuces propres? Faites le nous savoir dans les commentaires.

Conseillé: