C#项目中使用 Selenium + PhantomJS 模拟登录博客园

时间:2022-04-27 07:54:00

selenium 是一个web的自动化测试工具,不少学习功能自动化的同学开始首选selenium

PhantomJS

PhantomJS是一个基于webkit的javascript API。它使用QtWebKit作为它核心浏览器的功能,,使用webkit来编译解释执行JavaScript代码。任何你可以在基于webkit浏览器做的事情,它都能做到。它不仅是个隐形的浏览器,提供了诸如CSS选择器、支持Web标准、DOM操作、JSON、html5、Canvas、SVG等,同时也提供了处理文件I/O的操作,从而使你可以向操作系统读写文件等。PhantomJS的用处可谓非常广泛,诸如网络监测、网页截屏、无需浏览器的 Web 测试、页面访问自动化等。

PhantomJS官方示例:

C# 项目中如何使用:

首先Nuget下安装组件

Selenium.PhantomJS.WebDriver

Selenium.WebDriver

var url = "https://passport.cnblogs.com/user/signin"; var driver1 = new PhantomJSDriver(GetPhantomJSDriverService()); driver1.Navigate().GoToUrl(url); if (driver1.Title == "用户登录 - 博客园") { driver1.FindElement(By.Id("input1")).SendKeys("xielongbao"); driver1.FindElement(By.Id("input2")).SendKeys("1234"); driver1.FindElement(By.Id("signin")).Click(); } Console.WriteLine(driver1.PageSource);

登陆示例代码

一个不错的封装