如何使用HtmlAgilityPack调用成员

时间:2015-12-12 16:14:20

标签: c# login html-agility-pack

我想使用HtmlAgilityPack类登录。但我不知道如何。

这是我尝试过的。但它不起作用。

txtUserName.Text = "username";
txtPassword.Text = "password";
HtmlAgilityPack.HtmlDocument doc = new HtmlWeb().Load("about:Tabs");
doc.GetElementbyId("username").SetAttributeValue("value", txtUserName.Text);
doc.GetElementbyId("password").SetAttributeValue("value", txtPassword.Text);
foreach (HtmlNode node in doc.DocumentNode.SelectNodes("//button[@class='btn login-btn blue pull-right btn-primary']"))
 {
    node[0].InvokeMember("click");//wrong code
 }

无法使用WebBrowser类。

2 个答案:

答案 0 :(得分:2)

我找到了一种使用Selenium登录的方法,我认为这是最好的方式:

IWebDriver driver = new FirefoxDriver();
driver.Navigate().GoToUrl("Your Address Login");
IWebElement query = driver.FindElement(By.Id("username"));
query.SendKeys("Your Username");
query = driver.FindElement(By.Id("password"));
query.SendKeys("Your Password");
query.Submit();

下载selenium for dotnet

下载后添加引用WebDriver.dll并使用名称空间OpenQA.Selenium.Firefox;

了解详情Here

答案 1 :(得分:0)

HtmlAgilityPack只能解析html。

改用WebClient。