C# 如何在C中打开浏览器进行登录并获取内容#
我正在尝试使用正则表达式从HTML中获取字符串,它可以在本地HTML文件中工作。我唯一需要做的就是使用我的程序登录网站,从那个里获取html 问题是,我尝试使用3种不同的代码登录,但运气不好(我在这里找到了所有3种代码)。网站是HTTPS,也不支持Internet Explorer。不想使用fiddler或任何调试工具。我不在乎速度,只想简单地打开浏览器,登录并从显示的内容中获取html代码 有没有办法打开chrome/mozilla/opera并将显示的HTML传输到我的程序中?或者,如果不可能,是否有某种通用的登录方式 有没有办法打开chrome/mozilla/opera并将显示的HTML传输到我的程序中 例如,您可以使用SeleniumWebDriver来实现这一点。它将允许您在目标网页上自动按下按钮、输入文本等。我不会称之为“调试工具”,它更像是一个测试框架。NuGet提供了您所需的所有软件包:C# 如何在C中打开浏览器进行登录并获取内容#,c#,https,basic-authentication,C#,Https,Basic Authentication,我正在尝试使用正则表达式从HTML中获取字符串,它可以在本地HTML文件中工作。我唯一需要做的就是使用我的程序登录网站,从那个里获取html 问题是,我尝试使用3种不同的代码登录,但运气不好(我在这里找到了所有3种代码)。网站是HTTPS,也不支持Internet Explorer。不想使用fiddler或任何调试工具。我不在乎速度,只想简单地打开浏览器,登录并从显示的内容中获取html代码 有没有办法打开chrome/mozilla/opera并将显示的HTML传输到我的程序中?或者,如果不可
您可以使用驱动程序从页面中提取所需的数据。simple
HttpWebRequest如何?
s?不起作用。网站在代码中的任何登录方法上返回“错误登录”。那个么你们如何在那个里登录呢?你打什么电话?我不能用密码登录。仅在打开浏览器的情况下。我也尝试过保存cookies的代码,但运气不好。那么我做错事情了?无法直接从打开的浏览器获取html?
// Initialize the Chrome Driver
using (var driver = new ChromeDriver())
{
// Go to the home page
driver.Navigate().GoToUrl("https://yourdomainhere.net");
// Get the page elements
var userNameField = driver.FindElementById("username");
var userPasswordField = driver.FindElementById("password");
var loginButton = driver.FindElementByXPath("//input[@value='Login']");
// Type user name and password
userNameField.SendKeys("admin");
userPasswordField.SendKeys("12345");
// and click the login button
loginButton.Click();
// Extract the text and save it into result.txt
var result = driver.FindElementByXPath("//div[@id='case_login']/h3").Text;
File.WriteAllText("result.txt", result);
}