当前位置:首页 > 网站建设 > 正文内容

html5websocket实例(html5 websocket)

网站建设2天前61

什么是浏览器自动化?

自动化是现代科技的重要标志,它使得机器设备、系统或过程可以在没有人或较少人的直接参与下,按照人的要求,通过自动检测、信息处理、分析判断、操纵控制,实现预期的目标。在工业、农业、军事、科学研究、交通运输、商业、医疗、服务和家庭等方面广泛应用。

浏览器自动化就是其中的一种,它使用应用程序为我们完成重复性的任务,以实现人为干预无法实现的速度和效率水平。

那么,为什么我们需要浏览器自动化呢?实际上,浏览器自动化有很多使用场景:

自动点击网页:最常见的浏览器自动化任务之一是自动单击网页中的按钮或链接。单击按钮用于导航网站、确认数据输入操作、选择指向其他页面的链接或取消导航。

自动填写表单:可以自动执行重复的数据输入任务。源数据可能来自数据库、Excel 或 CSV 文件,甚至从另一个应用程序中读取数据。然后,它可以自动输入到表单中,并通过单击按钮接受信息。

从网页中提取数据:当执行数据输入或搜索任务时,通常需要从网页中提取结果。结果可以是 HTML 标记、文本或字段值、指向文件的超链接,或者在自动化后续过程中可能需要使用的任何其他特定属性。

自动化测试:自动化测试包含了很多方面,比如性能测试。但在浏览器自动化中,我们一般指的是端到端功能测试。例如,检查在登录页面上输入无效的登录名或密码时,是否会显示一条错误消息。

自动点击网页:最常见的浏览器自动化任务之一是自动单击网页中的按钮或链接。单击按钮用于导航网站、确认数据输入操作、选择指向其他页面的链接或取消导航。

自动填写表单:可以自动执行重复的数据输入任务。源数据可能来自数据库、Excel 或 CSV 文件,甚至从另一个应用程序中读取数据。然后,它可以自动输入到表单中,并通过单击按钮接受信息。

从网页中提取数据:当执行数据输入或搜索任务时,通常需要从网页中提取结果。结果可以是 HTML 标记、文本或字段值、指向文件的超链接,或者在自动化后续过程中可能需要使用的任何其他特定属性。

自动化测试:自动化测试包含了很多方面,比如性能测试。但在浏览器自动化中,我们一般指的是端到端功能测试。例如,检查在登录页面上输入无效的登录名或密码时,是否会显示一条错误消息。

实现浏览器自动化需要考虑如何实现应用程序与浏览器进行交互,这听起来很具有挑战性。但幸运的是,市面上已经有了一些很棒的工具,帮助我们实现浏览器自动化。其中,Playwright 是一款强大的浏览器自动化工具,可以让你轻松地完成上述任务。

什么是 Playwright?

Playwright是一款由Microsoft开发和维护的开源跨浏览器自动化库,它专为Web应用程序而设计。Playwright的特点非常丰富,包括跨浏览器、跨平台、跨语言、自动等待、支持多标签页/浏览器窗口、调试工具支持等等。其中最值得一提的是自动等待功能,它可以在执行动作之前等待元素是可操作的,消除了人为超时的需要,这是导致测试不可靠的主要原因。此外,它还支持多标签页/浏览器窗口,可以像一个真正的用户一样与多页面、多网站交互,并轻松处理frames和浏览器事件。另外,它提供了许多不同的调试选项,使其对开发人员友好。

展开全文

与老牌的自动化测试框架Selenium相比,Playwright更加现代化。Selenium的实现是非常臃肿的3层架构,因为它需要一个特有浏览器的WebDriver中间层实现来与浏览器进行交互。而现代浏览器已经支持了一些原生的功能,比如Chrome DevTools Protocol,它允许开发者通过一个简单的WebSocket连接与浏览器进行交互,这些功能都是基于标准的,而不是特定浏览器的。因此,Playwright无需浏览器帮它实现任何功能,而是利用这些原生功能直接与浏览器进行交互,来实现浏览器自动化。这使得Playwright的架构更加简单,更加现代。

总之,Playwright是一款功能强大、现代化的浏览器自动化工具,它可以更快、更可靠地完成浏览器自动化操作。

Hello Playwright

Playwright是一种跨平台的开源浏览器自动化工具,支持多种编程语言,包括Java、Type、Python、Java和C#。在这里,我们将使用C#编写示例代码。接下来,我们将从设置C#开发环境开始,让你快速掌握Playwright的使用方法。

设置开发环境

虽然可以使用不同的方式开发C#代码,但是大多数C#程序员还是使用Microsoft Visual Studio。因此,我们选择Visual Studio作为本书的集成开发环境(IDE)。

首先,用浏览器访问 https://visualstudio.microsoft.com/zh-hans/downloads,下载所需的Visual Studio版本,保存到“下载”文件夹。 运行刚才下载的引导程序文件以安装Visual Studio Installer。安装完Visual Studio Installer后,可以使用它通过选择所需的功能集或工作负载来自定义安装。在这里,我们选中“ASP.NET 和 Web 开发”和“.NET 桌面开发”,点击“安装”按钮,等待安装完成。

创建C#项目

运行安装好的Visual Studio,在“开始”窗口中,选择“创建新项目”。在“创建新项目”窗口中,选择“控制台应用”作为要创建的应用类型,点击“下一步”按钮。在“配置新项目”窗口中,输入“项目名称”和“位置”,点击“下一步”按钮。在“其他信息”窗口中,选择“.NET 6.0”作为目标框架。点击“创建”按钮,完成项目的创建。

添加Playwright依赖

在Visual Studio的右侧“解决方案资源管理器”的项目名称上点右键,选择“在终端中打开”,进入开发者PowerShell窗口。 在开发者PowerShell窗口中运行以下命令,安装Playwright依赖:

dotnet add package Microsoft.Playwright

然后在顶部菜单栏中,依次选择“生成”“生成解决方案”,等待项目生成成功。

安装浏览器

需要注意的是,Playwright自己启动的浏览器,并不是我们在本机已安装的普通浏览器程序,而是使用它自带的浏览器二进制文件。这样就避免了当机器上没有安装指定类型的浏览器而无法运行应用程序的问题。因此,我们需要在开发者PowerShell窗口中运行以下命令,安装Playwright所有受支持的浏览器二进制文件:

.\bin\Debug\net6.0\playwright.ps1 install

需要注意的是,浏览器二进制文件只需要安装一次,以后就不需要再安装了。

编写代码

在代码编辑器中,全部删除Program.cs原有的默认代码,替换成下列代码:

using Microsoft.Playwright;

var playwright = await Playwright.CreateAsync;

await using var browser = await playwright.Chromium.LaunchAsync;

var page = await browser.NewPageAsync;

await page.GotoAsync( "https://www.baidu.com");

var title = await page.InnerTextAsync( "title");

Console.WriteLine(title);

这段代码实现的功能是:使用Playwright启动Chromium浏览器,打开百度首页,获取页面标题,并输出到控制台。

在顶部菜单栏中,依次选择“调试”“开始调试”,如果代码运行成功,控制台会输出百度首页的页面标题:百度一下,你就知道。

代码解读

在代码编辑器中,打开Program.cs文件,将鼠标悬停在对应的代码行上,可以查看相关的详细说明。

让我们来逐一解读每行代码的作用:

第1行:引入Playwright命名空间。

第3行:创建Playwright实例。

第1行:引入Playwright命名空间。

第3行:创建Playwright实例。

需要注意的是,Playwright的API是异步的。因此,需要使用async/await关键字。在C#中,await关键字的作用是:等待异步操作完成后继续执行后续代码。

第5行:使用Playwright实例,启动Chromium浏览器。

第7行:使用Chromium浏览器实例,创建一个新的页面。

第9行:使用页面实例,打开百度首页。

第11行: 使用页面实例,获取页面标题。

第13行:输出页面标题到控制台。

html5websocket实例(html5 websocket)

第5行:使用Playwright实例,启动Chromium浏览器。

第7行:使用Chromium浏览器实例,创建一个新的页面。

第9行:使用页面实例,打开百度首页。

第11行: 使用页面实例,获取页面标题。

第13行:输出页面标题到控制台。

在本章中,我们了解了浏览器自动化以及Playwright的特点。然后我们学习了如何使用Visual Studio创建一个C#项目,以及如何使用Playwright启动Chromium浏览器,打开百度首页,并获取页面标题。

在下一章中,我们将学习Playwright的基本概念。

添加微信号【MyIO666】,邀你加入技术交流群

扫描二维码推送至手机访问。

版权声明:本文由飞速云SEO网络优化推广发布,如需转载请注明出处。

本文链接:http://zspsrg.cn/post/117788.html

分享给朋友:

“html5websocket实例(html5 websocket)” 的相关文章

济南seo网站优化(济南seo网址优化)

济南seo网站优化(济南seo网址优化)

本篇文章给大家谈谈济南seo网站优化,以及济南seo网址优化对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。 本文目录一览: 1、网站SEO优化应该怎么做啊? 2、济南seo优化一般多少钱 3、济南网站建设中seo优化到底该怎么做 4、济南地区有没有做SEO网站优化的? 哪里的SE...

沈阳网站制作公司(沈阳专业制作网站)

沈阳网站制作公司(沈阳专业制作网站)

本篇文章给大家谈谈沈阳网站制作公司,以及沈阳专业制作网站对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。 本文目录一览: 1、沈阳做网站的网络公司太多。希望大家帮忙推荐一家性价比高的?我都找得眼花缭乱的 2、沈阳网站建设哪家做的好啊? 3、沈阳网站建设 4、沈阳哪家公司网站做得比较...

招生宣传单模板简洁(招生传单设计模板)

招生宣传单模板简洁(招生传单设计模板)

本篇文章给大家谈谈招生宣传单模板简洁,以及招生传单设计模板对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。 本文目录一览: 1、宣传单模板 2、小学生辅导班招生宣传单怎么写? 3、小学生作文辅导班招生宣传单怎么写 4、英语培训班招生宣传单怎么做 5、开业宣传单怎么写 宣传单模...

QQ浏览器怎么查看源代码(浏览器查看网页源代码)

QQ浏览器怎么查看源代码(浏览器查看网页源代码)

今天给各位分享QQ浏览器怎么查看源代码的知识,其中也会对浏览器查看网页源代码进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!本文目录一览: 1、手机自带浏览器看一些比如腾讯朋友,搜搜之类的网页只能显示源代码, 2、电脑qq浏览器打不开了怎么办啊 3、怎么用es文件浏览器...

layui支持移动端吗(layui适配移动端)

layui支持移动端吗(layui适配移动端)

今天给各位分享layui支持移动端吗的知识,其中也会对layui适配移动端进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!本文目录一览: 1、谈开发和用户体验(1) 2、前端最近流行的框架都有哪些? 3、layui框架有几个核心文件 4、easyui,layui和...

制作灯谜卡片手工图片(制作灯谜卡片手工图片简单)

制作灯谜卡片手工图片(制作灯谜卡片手工图片简单)

本篇文章给大家谈谈制作灯谜卡片手工图片,以及制作灯谜卡片手工图片简单对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。 本文目录一览: 1、灯谜的物谜制作 2、灯谜卡片怎么做 3、灯笼怎么做手工制作 4、怎样制作灯谜? 灯谜的物谜制作 物谜的制作方法一)直描法谜面通过比喻、状物,直...