C# HttpWebClient从网页获取隐藏字段数据
我正在尝试获取隐藏字段的内容C# HttpWebClient从网页获取隐藏字段数据,c#,asp.net-mvc,dotnet-httpclient,C#,Asp.net Mvc,Dotnet Httpclient,我正在尝试获取隐藏字段的内容 <input name="__RequestVerificationToken" type="hidden" value="kPx9IGKrVVAqqFeucPtMA23XjbP7L3gKUlGVnSRXd173frtNjADPLJu6wLoBPlxGiIcgNw2" /> 我需要获取该值,以便可以使用登录凭据发回。如何使用HTTPClient获取此值?使用(不必费心翻译为HTTPClient而不是WebClient,但这不是重要的一点): 它在
<input name="__RequestVerificationToken" type="hidden" value="kPx9IGKrVVAqqFeucPtMA23XjbP7L3gKUlGVnSRXd173frtNjADPLJu6wLoBPlxGiIcgNw2" />
我需要获取该值,以便可以使用登录凭据发回。如何使用HTTPClient获取此值?使用(不必费心翻译为HTTPClient而不是WebClient,但这不是重要的一点):
它在HTML中,对吗?所以一旦你有了HTML,你就需要解析它并找到它的内容…用这个:然后解析出来。
using(var wc=new WebClient())
{
var dom = wc.DownloadString(someUrl);
var htmlDoc = new HtmlDocument();
htmlDoc.LoadHtml(dom);
var reqVerTokenElement = htmlDoc
.DocumentNode
.Descendants("input")
.Where(n => n.Attributes["name"]!=null
&& n.Attributes["name"].Value
=="__RequestVerificationToken")
.FirstOrDefault();
if(reqVerTokenElement!=null)
{
var tokenValue = reqVerTokenElement.Attributes["value"].Value;
}
}