-
Invoke-WebRequestを使用する方法:
$url = "https://example.com/table.html" $outputFile = "output.csv" $response = Invoke-WebRequest -Uri $url $table = $response.ParsedHtml.getElementsByTagName("table")[0] $rows = $table.rows $csvContent = foreach ($row in $rows) { $rowData = foreach ($cell in $row.cells) { $cell.innerText } $rowData -join "," } $csvContent | Out-File -FilePath $outputFile
-
HTMLAgilityPackを使用する方法:
$url = "https://example.com/table.html" $outputFile = "output.csv" Add-Type -Path "HtmlAgilityPack.dll" $web = New-Object HtmlAgilityPack.HtmlWeb $html = $web.Load($url) $table = $html.DocumentNode.SelectSingleNode("//table") $rows = $table.SelectNodes("tr") $csvContent = foreach ($row in $rows) { $rowData = foreach ($cell in $row.SelectNodes("th|td")) { $cell.InnerText } $rowData -join "," } $csvContent | Out-File -FilePath $outputFile
これらの方法では、$url
に変換したいHTMLテーブルのURLを指定し、$outputFile
に出力するCSVファイルのパスを指定します。HTMLテーブルの各行とセルを反復処理し、テキストをCSV形式に整形してファイルに書き込みます。
適切なURLと出力ファイルパスを指定して、PowerShellスクリプトを実行すると、HTMLテーブルがCSVファイルに変換されます。