Public/Get-FilmtheaterHilversum.ps1

function Get-FilmtheaterHilversum
{
    $DutchCulture = Get-Culture('nl-NL')
    $Today = Get-Date -Hour 0 -Minute 0 -Second 0 -Millisecond 0
    $Tomorrow = $Today.AddDays(1)

    Invoke-WebRequest -Uri https://www.filmtheaterhilversum.nl/films/ `
    | Select-Object -ExpandProperty Links `
    | Where-Object Href -Like 'https://filmtheaterhilversum.nl/film/*'
    | Select-Object -ExpandProperty HRef `
    | ForEach-Object {
        Write-Host "Processing movie url $($_)"
        $Document = ConvertTo-HtmlDocument -Uri $_

        $ScreenTimes = $Document
        | Select-HtmlNode -CssSelector '.movie-time' -All
        | ForEach-Object {
            $CurrentMovieTime = $_
            $ScreenDay = $CurrentMovieTime | Select-HtmlNode -CssSelector '.movie-screenday' | Get-HtmlNodeText
            Write-Host "- Screen day $($ScreenDay)"

            $ScreenDay = switch -regex ($ScreenDay)
            {
                'Vandaag' { $Today; break; }
                'Morgen' { $Tomorrow; break; }
                '\w{2}\s\d{1,2}\s\w{3}' { [DateTime]::ParseExact($ScreenDay.SubString(3), 'd MMM', $DutchCulture); break; }
            }

            if ($ScreenDay -lt $Today) # assume next year if day/month before today (end of December/start of January)
            {
                $ScreenDay = $ScreenDay.AddYears(1)
            }

            Write-Host "- Corrected screen day $($ScreenDay.ToShortDateString())"

            $CurrentMovieTime
            | Select-HtmlNode -CssSelector '.movie-timeblock' -All
            | ForEach-Object { $_ | Get-HtmlNodeText }
            | ForEach-Object { [TimeSpan]::ParseExact("$($_):00", 'g', $DutchCulture) }
            | ForEach-Object { $ScreenDay.Add($_) }
        }

        [PSCustomObject]@{
            PSTypeName = 'UncommonSense.Cinema.Film'
            Url        = $_
            DateTimes  = $ScreenTimes -join ','  #FIXME
            Title      = $Document | Select-HtmlNode -CssSelector 'h1' | Get-HtmlNodeText
            Body       = $Document | Select-HtmlNode -CssSelector '.content p strong' | Get-HtmlNodeText
        }
    }
}