Moissonnage du web
Le moissonnage du web (ou web scraping) est une technique de récupération et d'organisation automatisées des données du web.
Référence
Wikipédia :
Site avec exemple :
PowerShell
Oxylabs.io
Exemple
<#
Nom : PSHWEB021
Description : moissonage web, récupération d'éléments d'un catalogue
Usage : exercice en PowerShell
Particularité : néant
Auteur : fylip22
Version : 1.0
Révisions :
- 1.0 (26/10/2025) : création du script
#>
# Récupération du contenu de la page web
$pageHtml = Invoke-RestMethod 'https://www.produits-laitiers-de-france.com/fromage/tous-les-fromages/'
# Expression régulière pour cibler le contenu à récupérer
$expressionReguliere = '<h2 class="title-block-small">(?<nom>.*)<\/h2>(.*|\n*).*<span class="title-french-block-small">(?<origine>.*)<\/span>'
# Récupération des éléments ciblés par l'expression régulière
$correspondance = ($pageHtml | Select-String $expressionReguliere -AllMatches).Matches
# Constitution de la liste des éléments récupérés
$liste = foreach ($element in $correspondance)
{
[PSCustomObject]@{
'nom' = ($element.Groups.Where{$_.Name -like 'nom'}).Value
'origine' = ($element.Groups.Where{$_.Name -like 'origine'}).Value
}
}
$liste
# Exemple d'expression régulière
# $expressionReguliere020 = '<li class="active".*>(?<name>.*)</li>(.|\n)*<th>UPC</th><td.*>(?<upc_id>.*)</td>(.|\n)*<th>Product Type</th><td.*>(?<product_type>.*)</td>(.|\n)*<th>Price.*</th><td.*>(?<price>.*)</td>(.|\n)* <th>Availability</th>(.|\n)*<td.*>(?<availability>.*)</td>'