C#:
การดาวน์โหลดหน้าเว็บ
วิธีการ:
C# ทำให้การดาวน์โหลดหน้าเว็บเป็นเรื่องง่ายด้วยคลาส HttpClient
นี่คือตัวอย่างอย่างรวดเร็ว:
using System;
using System.Net.Http;
using System.Threading.Tasks;
class Program
{
static async Task Main(string[] args)
{
using (HttpClient client = new HttpClient())
{
try
{
string url = "http://example.com"; // แทนที่ด้วย URL ที่ต้องการ
HttpResponseMessage response = await client.GetAsync(url);
response.EnsureSuccessStatusCode();
string responseBody = await response.Content.ReadAsStringAsync();
Console.WriteLine(responseBody); // แสดงเนื้อหา HTML ดิบ
}
catch (HttpRequestException e)
{
Console.WriteLine("\nException Caught!");
Console.WriteLine("Message :{0} ", e.Message);
}
}
}
}
นี่จะแสดงเนื้อหา HTML ของหน้าเว็บที่ระบุไว้ในคอนโซล
ขุดลึก
ก่อนหน้า HttpClient
, C# ใช้คลาสเช่น WebClient
และ HttpWebRequest
เพื่อดาวน์โหลดเนื้อหาเว็บ HttpClient
เป็นเวอร์ชันล่าสุด และถูกออกแบบให้สามารถใช้งานซ้ำได้ มีประสิทธิภาพ และรองรับการปฏิบัติการแบบอะซิงโครนัส ทำให้เป็นตัวเลือกที่นิยมสำหรับแอปพลิเคชันใหม่ๆ
มีตัวเลือกอื่นๆ อยู่ เช่น ไลบรารีบุคคลที่สาม เช่น HtmlAgilityPack
สามารถแยกวิเคราะห์ HTML ทำให้ง่ายต่อการนำทาง DOM หรือดึงข้อมูลเฉพาะโดยไม่ต้องจัดการกับสตริง HTML ดิบ
เมื่อดาวน์โหลดหน้าเว็บ จำไว้ว่า: ให้ความเคารพต่อไฟล์ robots.txt จัดการข้อยกเว้น และระมัดระวังในเงื่อนไขการใช้งานของเว็บไซต์