使用.net 和Selenium模拟百度登录

简介: 使用自动化技术来模拟下百度登录

在上篇学习Selenium在.net上的使用后,只是简单了解了这些技术,做了个小demo,并不够过瘾,今天我们使用这项web自动化技术来模拟下百度登录。

关于引用这些sdk等我就不再写出来了,如果遇到不懂的就请浏览我上篇文章.net下使用Selenium、PhantomJS。下面我们来滤下模拟登录的思路。

第一步:

我们打开百度网址,查看登录按钮的dom元素,如下图;
微信截图_20211209144555.png

第二步:

选择操作登录按钮的单击事件,这时处理一下程序休息几秒;

第三步:

弹出登录按钮的对话框,选择用户名登录,同样也是操作其dom元素;
微信截图_2.png

第四步:

选择用户和密码,登录按钮的dom元素(这里的登录按钮式立即登录,前面的登录是弹出登录窗体)
呵呵.png

很简单,大体思路就是这样,下面我们上完整的代码;

    {
static void Main(string[] args)
        {
var url = "https://www.baidu.com";
var driver1 = new PhantomJSDriver(GetPhantomJSDriverService());
            driver1.Navigate().GoToUrl(url);
var login = driver1.FindElement(By.LinkText("登录"));
            login.Click();
            Console.WriteLine("------------------------");
            Console.WriteLine(driver1.PageSource);
            Console.WriteLine("------------------------");
            Thread.Sleep(8000);
            IWebElement e = driver1.FindElement(By.LinkText("用户名登录"));
if (e != null)
            {
                e.Click();
            }
            driver1.FindElement(By.Id("TANGRAM__PSP_10__userName")).SendKeys("1248@qq.com");
            driver1.FindElement(By.Id("TANGRAM__PSP_10__password")).SendKeys("123456");
            driver1.FindElement(By.Id("TANGRAM__PSP_10__submit")).Click();           
            Console.Read();
        }
private static PhantomJSDriverService GetPhantomJSDriverService()
        {
            PhantomJSDriverService pds = PhantomJSDriverService.CreateDefaultService();
//设置代理服务器地址            
//pds.Proxy = $"{ip}:{port}";  
//设置代理服务器认证信息           
//pds.ProxyAuthentication = GetProxyAuthorization();
return pds;
        }
    }

最后,关于登录后的截图信息我这里就不展示了,值得注意的就是dom元素的操作,一定要选择正确,如果你登录了百度账号还选择去登录这时的dom元素操作肯定会找不到。

相关文章
|
Web App开发 前端开发 Java
百度搜索:蓝易云【selenium基础语法详解。】
上述是Selenium的基础语法,用于自动化Web浏览器的测试和操作。具体的用法可能因使用的编程语言和具体的应用场景而有所不同。建议您参考Selenium的官方文档或相关教程以获取更详细和准确的语法和示例代码。
274 2
|
搜索推荐 API 数据安全/隐私保护
使用Selenium进行网页登录和会话管理
使用Selenium进行网页登录和会话管理
|
25天前
|
安全 Java 网络安全
Android远程连接和登录FTPS服务代码(commons.net库)
Android远程连接和登录FTPS服务代码(commons.net库)
22 1
|
2月前
|
数据采集 Python
Selenium爬取百度热搜榜单
Selenium爬取百度热搜榜单
60 0
Selenium爬取百度热搜榜单
|
3月前
|
数据采集 Python
如何用Python Selenium和WebDriver抓取LinkedIn数据并保存登录状态
本文介绍了使用Python Selenium和WebDriver库抓取LinkedIn数据的方法。首先,安装Selenium库和对应的WebDriver,然后配置爬虫代理IP以避免频繁请求被检测。接下来,设置user-agent和cookies以模拟真实用户行为,实现登录并保持状态。登录后,使用WebDriver抓取目标页面数据,如用户名、年龄、性别和简历信息。最后,强调了优化代码、处理异常和遵守使用条款的重要性,以提高效率并避免账号被封禁。
如何用Python Selenium和WebDriver抓取LinkedIn数据并保存登录状态
|
3月前
|
安全 Java 网络安全
Android远程连接和登录FTPS服务代码(commons.net库)
很多文章都介绍了FTPClient如何连接ftp服务器,但却很少有人说如何连接一台开了SSL认证的ftp服务器,现在代码来了。
100 2
|
6月前
|
前端开发 Java 测试技术
selenium+python自动化测试--登录
selenium+python自动化测试--登录
95 2
|
6月前
|
Web App开发 IDE 测试技术
实战练习:用airtest-selenium脚本爬取百度热搜标题
实战练习:用airtest-selenium脚本爬取百度热搜标题
140 0
|
6月前
|
Python
使用selenium的edge浏览器登录某为
使用selenium的edge浏览器登录某为
86 0
|
11月前
|
Web App开发 Docker 容器
百度搜索:蓝易云【用docker搭建selenium grid分布式环境实践】
通过这些步骤,您可以使用Docker搭建Selenium Grid分布式环境,并在多个节点上并行运行Selenium测试。根据实际需求,您还可以进行更高级的配置和扩展,如增加更多的节点、配置浏览器版本等。
66 1

热门文章

最新文章