Shantha Kumar T
Export all liked-by information of all modern pages in SharePoint site
In the fast-paced world of data management and automation, the ability to export data efficiently is a skill highly required by professionals across various fields. Fortunately, PowerShell scripts offer a powerful solution to streamline this process, allowing users to extract and manipulate data with ease.
Here’s a simple PowerShell script that assists in exporting the list of all Pages from Site Pages library from SharePoint Site including the users who liked them by utilising PnP PowerShell.
PnP PowerShell version used:2.4.71-nightly
Write-Host "Execution Started..." $siteurl = "https://<tenant_name>.sharepoint.com/sites/<site_name>" Connect-PnPOnline $siteurl -Interactive $files = Get-PnPFileInFolder -Identity "SitePages" Write-Host "Total files found: "$files.length if ($files.length -gt 0) { Write-Host "Export Started..." $results = @() foreach ($file in $files) { Write-Host $file.Name $likes = Get-PnPPageLikedByInformation -Identity $file.Name if ($likes.length -gt 0) { foreach ($like in $likes) { $results += [pscustomobject][ordered]@{ Name = $file.Name Title = $file.Title UserLiked = $like.Name UserMail = $like.Mail } } }else{ $results += [pscustomobject][ordered]@{ Name = $file.Name Title = $file.Title UserLiked = "" UserMail = "" } } } $results | Export-Csv -Path "allpagewithlikes.csv" -NoTypeInformation Write-Host "Export Completed." } Write-Host "Execution Ended."
The above script iterates to all the modern pages from the Site Pages library and retrieve the liked by information by using GetPnPPageLikedByInformation command. Then it exports in to the csv file in current running path.