如何使用HtmlAgilityPack调用会员 [英] How to InvokeMember using HtmlAgilityPack

查看:112
本文介绍了如何使用HtmlAgilityPack调用会员的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想使用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类.

解决方案

我找到了一种使用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();

下载硒用于dotnet

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

了解更多信息此处

I want to use HtmlAgilityPack class to login. But I don't know how.

This is what I've tried. But it's not working.

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
 }

I cannot use WebBrowser class.

解决方案

I found a way to login using Selenium and I think it's the best way to do it:

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();

download selenium for dotnet

After download add reference WebDriver.dll and use namespace OpenQA.Selenium.Firefox;

Learn more Here

这篇关于如何使用HtmlAgilityPack调用会员的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆