使用 HTML 请求不提供 Table 数据使用 C# 抓取网站
Scraping Website with C# using HTML Request Not Giving Table Data
我正在用 C# 制作一个简单的网站抓取工具来检索最高法院案件的当事人姓名(这是 public 信息),就像这个示例 link:https://www.supremecourt.gov/search.aspx?filename=/docket/docketfiles/html/public/19-8334.html
C#代码:
private static async void GetHtmlAsync(String docket)
{
var url = "https://www.supremecourt.gov/search.aspx?filename=/docket/docketfiles/html/public/19-8334.html";
var httpClient = new HttpClient();
httpClient.DefaultRequestHeaders.UserAgent.ParseAdd("Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.121 Safari/537.36 OPR/71.0.3770.234");
var html = await httpClient.GetStringAsync(url);
var htmlDocument = new HtmlAgilityPack.HtmlDocument();
htmlDocument.LoadHtml(html);
Console.WriteLine();
}
问题是,每当我 运行 执行此操作时,它都会成功返回整个 HTML 文件,但没有包含在元素中的我需要的数据。
在浏览器中:
在运行时:
我不知道为什么,但你应该得到适当的回应。
尝试关注你可能会得到答案。
var html = httpClient.GetAsync(url).GetAwaiter().GetResult();
我正在用 C# 制作一个简单的网站抓取工具来检索最高法院案件的当事人姓名(这是 public 信息),就像这个示例 link:https://www.supremecourt.gov/search.aspx?filename=/docket/docketfiles/html/public/19-8334.html
C#代码:
private static async void GetHtmlAsync(String docket)
{
var url = "https://www.supremecourt.gov/search.aspx?filename=/docket/docketfiles/html/public/19-8334.html";
var httpClient = new HttpClient();
httpClient.DefaultRequestHeaders.UserAgent.ParseAdd("Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.121 Safari/537.36 OPR/71.0.3770.234");
var html = await httpClient.GetStringAsync(url);
var htmlDocument = new HtmlAgilityPack.HtmlDocument();
htmlDocument.LoadHtml(html);
Console.WriteLine();
}
问题是,每当我 运行 执行此操作时,它都会成功返回整个 HTML 文件,但没有包含在元素中的我需要的数据。
在浏览器中:
在运行时:
我不知道为什么,但你应该得到适当的回应。
尝试关注你可能会得到答案。
var html = httpClient.GetAsync(url).GetAwaiter().GetResult();