PowerShell:
การวิเคราะห์ HTML

วิธีการ:

PowerShell ไม่มีตัวแยกวิเคราะห์ HTML โดยตรง, แต่คุณสามารถใช้คำสั่ง Invoke-WebRequest เพื่อเข้าถึงและวิเคราะห์เนื้อหา HTML สำหรับการแยกวิเคราะห์และการจัดการที่ซับซ้อนยิ่งขึ้น, สามารถใช้ HtmlAgilityPack, ไลบรารี .NET ที่ได้รับความนิยม

การใช้ Invoke-WebRequest:

# ตัวอย่างง่ายๆในการดึงชื่อหัวข้อจากเว็บ
$response = Invoke-WebRequest -Uri 'http://example.com'
# ใช้สิทธิ์ ParsedHtml เพื่อเข้าถึงองค์ประกอบ DOM
$title = $response.ParsedHtml.title
Write-Output $title

ตัวอย่างผลลัพธ์:

Example Domain

การใช้ HtmlAgilityPack:

ขั้นแรก, คุณจำเป็นต้องติดตั้ง HtmlAgilityPack คุณสามารถทำได้ผ่าน NuGet Package Manager:

Install-Package HtmlAgilityPack -ProviderName NuGet

จากนั้น, คุณสามารถใช้มันใน PowerShell เพื่อวิเคราะห์ HTML:

# โหลดการรวม HtmlAgilityPack
Add-Type -Path "path\to\HtmlAgilityPack.dll"

# สร้างอ็อบเจกต์ HtmlDocument
$doc = New-Object HtmlAgilityPack.HtmlDocument

# โหลด HTML จากไฟล์หรือคำขอเว็บ
$htmlContent = (Invoke-WebRequest -Uri "http://example.com").Content
$doc.LoadHtml($htmlContent)

# ใช้ XPath หรือวิธีการคิวรีอื่นๆ เพื่อดึงองค์ประกอบ
$node = $doc.DocumentNode.SelectSingleNode("//h1")

if ($node -ne $null) {
    Write-Output $node.InnerText
}

ตัวอย่างผลลัพธ์:

Welcome to Example.com!

ในตัวอย่างเหล่านี้, Invoke-WebRequest เหมาะสำหรับงานง่ายๆ, ขณะที่ HtmlAgilityPack นำเสนอชุดคุณสมบัติที่ครอบคลุมมากขึ้นสำหรับการวิเคราะห์ HTML และการจัดการที่ซับซ้อน.