HtmlAgilityPack-如何在重定向后获取网址路径

时间:2020-04-06 11:47:07

标签: c# html-agility-pack

在尝试重定向后,我尝试获取一个Url完整路径,简单的代码如下:

 var documentx = new HtmlWeb().Load(textBox1.Text);

其中 textbox1.text 值为“ https://xxxx.org/file/download

因此,在我实际运行该代码之后,将其重定向并将结构更改为:

https://xxxx.org/file/ur344333kd/45rrreew

那么我如何获得新的URL路径?使用 HtmlAgilityPack C#Winform 。谢谢

1 个答案:

答案 0 :(得分:0)

通过将web.CaptureRedirect设置为true,并通过查询web.ResponseUri

您可以获得实际下载了文档的最终请求的网址:

注意:我正在发送此UserAgent字符串,就像我的Chrome浏览器一样,因为服务器的行为可能会因其而异。

HtmlWeb web = new HtmlWeb();

web.UserAgent = "Mozilla/5.0 (Windows NT 6.3; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.149 Safari/537.36";

web.CaptureRedirect = true;

HtmlDocument doc = web.Load("http://www.google.com");

Console.WriteLine("Response retrieved from: {0}", web.ResponseUri);

输出为:

Response retrieved from: https://www.google.com/?gws_rd=ssl
相关问题