前言
👨💻👨🌾📝记录学习成果,以便温故而知新
本文以火狐与微软浏览器为例,简单介绍一下Selenium
一、Firefox
1.确定浏览器版本
能看到当前浏览器版本,但是却没什么用,因为驱动的版本是独立的。由于火狐浏览器一直更新的,所以就下最新版的驱动。
2.下载地址
下载地址 https://github.com/mozilla/geckodriver/releases
3.Nuget依赖添加
新建一个窗体程序,添加依赖如下:
WebDriver
Selenium WebDriver Firefox
4.相关代码
在窗体程序的Form中添加一个按钮与一个富文本框,主要代码在按钮点击事件中
private void button1_Click(object sender, EventArgs e)
{
var cdSvc = FirefoxDriverService.CreateDefaultService("../", "geckodriver.exe");
IWebDriver driver = new FirefoxDriver(cdSvc);
driver.Manage().Window.Maximize();
driver.Navigate().GoToUrl("http://www.baidu.com");
driver.FindElement(By.Id("kw")).SendKeys("优快云");
driver.FindElement(By.Id("su")).Click();
richTextBox1.AppendText(driver.PageSource);
//driver.Quit();
}
运行效果:
二、Edge
1.确定浏览器版本
“帮助和反馈”=>“Microsoft Edge”
2.下载地址
下载地址 https://developer.microsoft.com/en-us/microsoft-edge/tools/webdriver/
找到对应版本的x86版下载。
3.Nuget依赖添加
新建一个窗体程序,添加依赖如下:
WebDriver
msedgedriver
4.相关代码
在窗体程序的Form中添加一个按钮与一个富文本框,主要代码在按钮点击事件中
private void button1_Click(object sender, EventArgs e)
{
EdgeDriverService service = EdgeDriverService.CreateDefaultService("../", "msedgedriver.exe");
EdgeOptions option = new EdgeOptions();
EdgeDriver driver = new EdgeDriver(service, option);
driver.Manage().Window.Maximize();
driver.Navigate().GoToUrl("http://www.baidu.com");
var _cookies = driver.Manage().Cookies.AllCookies;
foreach (Cookie cookie in _cookies)
{
richTextBox1.AppendText(cookie.Name + Environment.NewLine);
}
driver.FindElement(By.Id("kw")).SendKeys("优快云");
driver.FindElement(By.Id("su")).Click();
//richTextBox1.AppendText(driver.PageSource);
//driver.Quit();
}
运行效果:
三、结语
如上图红框,编译目录中已经有相应的驱动,但是却运行不了,疑似与浏览器版本不匹配。